<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:40:39 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[CSHARP-1771] Support IIF method (i.e. ternary operator) in LINQ</title>
                <link>https://jira.mongodb.org/browse/CSHARP-1771</link>
                <project id="10041" key="CSHARP">C# Driver</project>
                    <description>&lt;p&gt;I&apos;m trying to use the new driver to support an OData webapi service.&lt;br/&gt;
I have &quot;tenants&quot; collection, a &quot;tenant&quot; document includes &quot;applications&quot; collection.&lt;br/&gt;
This query fails:&lt;br/&gt;
&lt;a href=&quot;http://dev.api.axonize.com/odata/tenants?$expand=applications&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;http://dev.api.axonize.com/odata/tenants?$expand=applications&lt;/a&gt;&lt;br/&gt;
With this stack trace:&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;{ &quot;error&quot;:{ &quot;code&quot;:&quot;&quot;,&quot;message&quot;:&quot;An error has occurred.&quot;,&quot;innererror&quot;:{ &quot;message&quot;:&quot;The expression tree is not supported: IIF(({document} == null), null, {document}{applications})&quot;,&quot;type&quot;:&quot;System.NotSupportedException&quot;,&quot;stacktrace&quot;:&quot; at MongoDB.Driver.Linq.Processors.EmbeddedPipeline.EmbeddedPipelineBinder.BindNonMethodCall(Expression node)\r\n at MongoDB.Driver.Linq.Processors.PipelineBinderBase`1.Bind(Expression node)\r\n at MongoDB.Driver.Linq.Processors.PipelineBinderBase`1.BindPipeline(Expression node)\r\n at MongoDB.Driver.Linq.Processors.PipelineBinderBase`1.BindMethodCall(MethodCallExpression node)\r\n at MongoDB.Driver.Linq.Processors.PipelineBinderBase`1.Bind(Expression node)\r\n at MongoDB.Driver.Linq.Processors.EmbeddedPipeline.EmbeddedPipelineBinder.Bind(Expression node, IBindingContext parent)\r\n at MongoDB.Driver.Linq.Processors.SerializationBinder.Visit(Expression node)\r\n at System.Linq.Expressions.ExpressionVisitor.VisitConditional(ConditionalExpression node)\r\n at MongoDB.Driver.Linq.Processors.SerializationBinder.Visit(Expression node)\r\n at System.Linq.Expressions.ExpressionVisitor.VisitMemberAssignment(MemberAssignment node)\r\n at System.Linq.Expressions.ExpressionVisitor.Visit[T](ReadOnlyCollection`1 nodes, Func`2 elementVisitor)\r\n at System.Linq.Expressions.ExpressionVisitor.VisitMemberInit(MemberInitExpression node)\r\n at MongoDB.Driver.Linq.Processors.SerializationBinder.Visit(Expression node)\r\n at System.Linq.Expressions.ExpressionVisitor.VisitMemberAssignment(MemberAssignment node)\r\n at System.Linq.Expressions.ExpressionVisitor.Visit[T](ReadOnlyCollection`1 nodes, Func`2 elementVisitor)\r\n at System.Linq.Expressions.ExpressionVisitor.VisitMemberInit(MemberInitExpression node)\r\n at MongoDB.Driver.Linq.Processors.SerializationBinder.Visit(Expression node)\r\n at System.Linq.Expressions.ExpressionVisitor.VisitMemberAssignment(MemberAssignment node)\r\n at System.Linq.Expressions.ExpressionVisitor.Visit[T](ReadOnlyCollection`1 nodes, Func`2 elementVisitor)\r\n at System.Linq.Expressions.ExpressionVisitor.VisitMemberInit(MemberInitExpression node)\r\n at MongoDB.Driver.Linq.Processors.SerializationBinder.Visit(Expression node)\r\n at MongoDB.Driver.Linq.Processors.Pipeline.MethodCallBinders.SelectBinder.Bind(PipelineExpression pipeline, PipelineBindingContext bindingContext, MethodCallExpression node, IEnumerable`1 arguments)\r\n at MongoDB.Driver.Linq.Processors.MethodInfoMethodCallBinder`1.Bind(PipelineExpression pipeline, TBindingContext bindingContext, MethodCallExpression node, IEnumerable`1 arguments)\r\n at MongoDB.Driver.Linq.Processors.PipelineBinderBase`1.BindMethodCall(MethodCallExpression node)\r\n at MongoDB.Driver.Linq.Processors.PipelineBinderBase`1.Bind(Expression node)\r\n at MongoDB.Driver.Linq.Processors.Pipeline.PipelineBinder.Bind(Expression node, IBsonSerializerRegistry serializerRegistry)\r\n at MongoDB.Driver.Linq.MongoQueryProviderImpl`1.Prepare(Expression expression)\r\n at MongoDB.Driver.Linq.MongoQueryProviderImpl`1.Translate(Expression expression)\r\n at MongoDB.Driver.Linq.MongoQueryProviderImpl`1.Execute(Expression expression)\r\n at MongoDB.Driver.Linq.MongoQueryableImpl`2.GetEnumerator()\r\n at System.Web.OData.Formatter.Serialization.ODataFeedSerializer.WriteFeed(IEnumerable enumerable, IEdmTypeReference feedType, ODataWriter writer, ODataSerializerContext writeContext)\r\n at System.Web.OData.Formatter.ODataMediaTypeFormatter.WriteToStream(Type type, Object value, Stream writeStream, HttpContent content, HttpContentHeaders contentHeaders)\r\n at System.Web.OData.Formatter.ODataMediaTypeFormatter.WriteToStreamAsync(Type type, Object value, Stream writeStream, HttpContent content, TransportContext transportContext, CancellationToken cancellationToken)\r\n--- End of stack trace from previous location where exception was thrown ---\r\n at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)\r\n at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)\r\n at System.Web.Http.Owin.HttpMessageHandlerAdapter.d__13.MoveNext()&quot; } } }&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;</description>
                <environment>win 10, .net 4.6.1</environment>
        <key id="318683">CSHARP-1771</key>
            <summary>Support IIF method (i.e. ternary operator) in LINQ</summary>
                <type id="2" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14711&amp;avatarType=issuetype">New Feature</type>
                                            <priority id="3" iconUrl="https://jira.mongodb.org/images/icons/priorities/major.svg">Major - P3</priority>
                        <status id="6" iconUrl="https://jira.mongodb.org/images/icons/statuses/closed.png" description="The issue is considered finished, the resolution is correct. Issues which are closed can be reopened.">Closed</status>
                    <statusCategory id="3" key="done" colorName="success"/>
                                    <resolution id="9">Done</resolution>
                                        <assignee username="robert@mongodb.com">Robert Stam</assignee>
                                    <reporter username="omricohen">Omri Cohen</reporter>
                        <labels>
                            <label>linq</label>
                            <label>linq,query</label>
                            <label>rp-track</label>
                    </labels>
                <created>Sun, 25 Sep 2016 11:59:06 +0000</created>
                <updated>Wed, 8 Dec 2021 15:33:24 +0000</updated>
                            <resolved>Mon, 25 Oct 2021 15:17:05 +0000</resolved>
                                    <version>2.3</version>
                                    <fixVersion>2.14.0</fixVersion>
                                    <component>Linq</component>
                    <component>LINQ3</component>
                                        <votes>11</votes>
                                    <watches>24</watches>
                                                                                                                <comments>
                            <comment id="4145551" author="rstam" created="Mon, 25 Oct 2021 15:17:05 +0000"  >&lt;p&gt;This issue has been fixed in the new LINQ provider (known as LINQ3) which will be included in the upcoming 2.14 release.&lt;/p&gt;

&lt;p&gt;Configure your &lt;tt&gt;MongoClientSettings&lt;/tt&gt; to use &lt;tt&gt;LinqProvider.V3&lt;/tt&gt; if you want to use this functionality.&lt;/p&gt;

&lt;p&gt;To configure a client to use the LINQ3 provider use code like the following&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;var connectionString = &quot;mongodb://localhost&quot;;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;var clientSettings = MongoClientSettings.FromConnectionString(connectionString);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;clientSettings.LinqProvider = LinqProvider.V3;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;var client = new MongoClient(clientSettings);&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;</comment>
                            <comment id="4145550" author="xgen-internal-githook" created="Mon, 25 Oct 2021 15:16:37 +0000"  >&lt;p&gt;Author:&lt;/p&gt;
{&apos;name&apos;: &apos;rstam&apos;, &apos;email&apos;: &apos;robert@robertstam.org&apos;, &apos;username&apos;: &apos;rstam&apos;}
&lt;p&gt;Message: &lt;a href=&quot;https://jira.mongodb.org/browse/CSHARP-1771&quot; title=&quot;Support IIF method (i.e. ternary operator) in LINQ&quot; class=&quot;issue-link&quot; data-issue-key=&quot;CSHARP-1771&quot;&gt;&lt;del&gt;CSHARP-1771&lt;/del&gt;&lt;/a&gt;: Verify that the ternary operator works as expected in LINQ3.&lt;br/&gt;
Branch: master&lt;br/&gt;
&lt;a href=&quot;https://github.com/mongodb/mongo-csharp-driver/commit/18fd1c7b12cc83217831d5c5c5c52463ae191ef4&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-csharp-driver/commit/18fd1c7b12cc83217831d5c5c5c52463ae191ef4&lt;/a&gt;&lt;/p&gt;</comment>
                            <comment id="4094634" author="jeanclaude.adiba@wikandoo.net" created="Thu, 30 Sep 2021 16:33:24 +0000"  >&lt;p&gt;I have been waiting for this now for over a month&#160;&lt;img class=&quot;emoticon&quot; src=&quot;https://jira.mongodb.org/images/icons/emoticons/sad.png&quot; height=&quot;16&quot; width=&quot;16&quot; align=&quot;absmiddle&quot; alt=&quot;&quot; border=&quot;0&quot;/&gt;&lt;/p&gt;</comment>
                            <comment id="4093711" author="adam.jodlowski@tfbank.pl" created="Thu, 30 Sep 2021 10:06:27 +0000"  >&lt;p&gt;Hello&#160;&lt;/p&gt;

&lt;p&gt;Can i ask you if you have any rough estimate as to when this new LINQ implementation will be finished and released?&lt;/p&gt;

&lt;p&gt;I&apos;m experiencing the problem with IIF and i need to create some workaround for that. It would be nice to know for how much long i will need to support this workaround.&lt;/p&gt;

&lt;p&gt;Thanks.&lt;/p&gt;</comment>
                            <comment id="3865528" author="JIRAUSER1257713" created="Tue, 8 Jun 2021 07:22:56 +0000"  >&lt;p&gt;Hi,&lt;/p&gt;

&lt;p&gt;mega news! Thank you!&lt;/p&gt;

&lt;p&gt;&quot;Upcoming beta&quot; means it is not in beta1 yet?&lt;/p&gt;</comment>
                            <comment id="3863037" author="james.kovacs" created="Mon, 7 Jun 2021 17:38:20 +0000"  >&lt;p&gt;Hi, &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=jiri.vavra%40datapac.sk&quot; class=&quot;user-hover&quot; rel=&quot;jiri.vavra@datapac.sk&quot;&gt;jiri.vavra@datapac.sk&lt;/a&gt;,&lt;/p&gt;

&lt;p&gt;We are currently completing a code review of the new LINQ implementation before merging it into the main repository. Our goal is to ship it as an opt-in replacement for our current LINQ provider in an upcoming beta release of 2.13.0.&lt;/p&gt;

&lt;p&gt;Sincerely,&lt;br/&gt;
James&lt;/p&gt;</comment>
                            <comment id="3861840" author="JIRAUSER1260584" created="Mon, 7 Jun 2021 08:56:47 +0000"  >&lt;p&gt;Hello&#160;&lt;/p&gt;

&lt;p&gt;Can i ask you if you have any rough estimate as to when this new LINQ implementation will be finished and released?&lt;/p&gt;

&lt;p&gt;I&apos;m experiencing the problem with IIF and i need to create some workaround for that. It would be nice to know for how much long i will need to support this workaround.&lt;/p&gt;

&lt;p&gt;Thanks.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="3720540" author="dmitry.lukyanov" created="Thu, 15 Apr 2021 15:02:12 +0000"  >&lt;p&gt;Hello &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=dimitri.kroo%40baramundi.com&quot; class=&quot;user-hover&quot; rel=&quot;dimitri.kroo@baramundi.com&quot;&gt;dimitri.kroo@baramundi.com&lt;/a&gt; , we&apos;re actively working on a new LINQ implementation, and consider adding this case there. We will let here know when it will be ready.&lt;/p&gt;</comment>
                            <comment id="3720385" author="JIRAUSER1257713" created="Thu, 15 Apr 2021 14:05:12 +0000"  >&lt;p&gt;Hi!&lt;/p&gt;

&lt;p&gt;Any Update on this?&lt;/p&gt;</comment>
                            <comment id="3526105" author="rstam" created="Thu, 10 Dec 2020 22:28:33 +0000"  >&lt;p&gt;I don&apos;t think it&apos;s possible to translate IIF to a normal MongoDB query/filter. There simply is no available query operator that could behave as required.&lt;/p&gt;

&lt;p&gt;It would be possible however to translate it to a query/filter using the `$expr` escape mechanism to use the full expression language in a normal query.&lt;/p&gt;</comment>
                            <comment id="3525870" author="james.kovacs" created="Thu, 10 Dec 2020 20:37:02 +0000"  >&lt;p&gt;Note that &lt;tt&gt;ExpressionType.Conditional&lt;/tt&gt; (aka the C# ternary operator aka &lt;tt&gt;IIF&lt;/tt&gt;) works in the &lt;tt&gt;select&lt;/tt&gt; clause but not the &lt;tt&gt;where&lt;/tt&gt; clause:&lt;/p&gt;

&lt;p&gt;Works:&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;            var query = from doc in coll.AsQueryable()&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;                        select new { result = doc[&quot;a&quot;] == 1 ? 42 : 144};&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;

&lt;p&gt;Fails with &lt;tt&gt;NotImpementedException&lt;/tt&gt;:&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;            var query = from doc in coll.AsQueryable()&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;                        where doc[&quot;a&quot;] == null ? true : doc[&quot;a&quot;] == 1&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;                        select new { result = doc[&quot;a&quot;] == 1 ? 42 : 144};&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;</comment>
                            <comment id="3426059" author="rstam" created="Mon, 5 Oct 2020 17:50:14 +0000"  >&lt;p&gt;Thank you for reporting this. We are working on a new implementation of our LINQ translator and will make sure IIF works properly in the new implementation.&lt;/p&gt;</comment>
                            <comment id="2710420" author="burnett.nicholas@gmail.com" created="Tue, 7 Jan 2020 18:57:45 +0000"  >&lt;p&gt;I was running into a similar problem when specifying an OData filter like this:&lt;/p&gt;

&lt;p&gt;$filter=isof(&apos;DerivedType&apos;)&lt;/p&gt;

&lt;p&gt;Here is the exception this caused:&lt;/p&gt;

&lt;p&gt;&apos;Unsupported filter: IIF(({document} Is DerivedType), True, False).&apos;&lt;/p&gt;

&lt;p&gt;Setting HandleNullPropagation to False does not solve this problem.&lt;/p&gt;

&lt;p&gt;So adding my vote for IFF being properly supported.&lt;/p&gt;

&lt;p&gt;However, I was able to work around the issue like this:&lt;/p&gt;

&lt;p&gt;Create a filter binder that unwraps the &apos;is&apos; expression from the &apos;IFF&apos; expression.&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: #006699; font-weight: bold; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;public&lt;/span&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #006699; font-weight: bold; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;class&lt;/span&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt; ApODataFilterBinder : Microsoft.AspNet.OData.Query.Expressions.FilterBinder&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;{&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;     &lt;/span&gt;&lt;span style=&quot;color: #006699; font-weight: bold; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;public&lt;/span&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt; ApODataFilterBinder(IServiceProvider requestContainer) : base(requestContainer) { }       &lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&amp;nbsp;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;     &lt;/span&gt;&lt;span style=&quot;color: #006699; font-weight: bold; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;public&lt;/span&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt; override Expression BindSingleValueFunctionCallNode(SingleValueFunctionCallNode node)&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;     {&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;        var expression = base.BindSingleValueFunctionCallNode(node);            &lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;        &lt;/span&gt;&lt;span style=&quot;color: #006699; font-weight: bold; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;return&lt;/span&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt; node.Name == &lt;/span&gt;&lt;span style=&quot;color: blue; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;&quot;isof&quot;&lt;/span&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt; ? ((ConditionalExpression) expression).Test : expression;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;     }&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;}&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;
&lt;p&gt;And then configuring this FilterBinder in IoC like this:&lt;/p&gt;
&lt;p/&gt;
&lt;div id=&quot;syntaxplugin&quot; class=&quot;syntaxplugin&quot; style=&quot;border: 1px dashed #bbb; border-radius: 5px !important; overflow: auto; max-height: 30em;&quot;&gt;
&lt;table cellspacing=&quot;0&quot; cellpadding=&quot;0&quot; border=&quot;0&quot; width=&quot;100%&quot; style=&quot;font-size: 1em; line-height: 1.4em !important; font-weight: normal; font-style: normal; color: black;&quot;&gt;
		&lt;tbody &gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;  margin-top: 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;            app.UseMvc(c =&amp;gt;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;            {&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;                c.EnableDependencyInjection(config =&amp;gt;&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;                {&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;                    config.AddService(Microsoft.OData.ServiceLifetime.Transient,   typeof(FilterBinder), typeof(ApODataFilterBinder));&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;                });&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
				&lt;tr id=&quot;syntaxplugin_code_and_gutter&quot;&gt;
						&lt;td  style=&quot; line-height: 1.4em !important; padding: 0em; vertical-align: top;&quot;&gt;
					&lt;pre style=&quot;font-size: 1em; margin: 0 10px;   margin-bottom: 10px;  width: auto; padding: 0;&quot;&gt;&lt;span style=&quot;color: black; font-family: &apos;Consolas&apos;, &apos;Bitstream Vera Sans Mono&apos;, &apos;Courier New&apos;, Courier, monospace !important;&quot;&gt;            });&lt;/span&gt;&lt;/pre&gt;
			&lt;/td&gt;
		&lt;/tr&gt;
			&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;p/&gt;
&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="2204273" author="JIRAUSER1260912" created="Sat, 6 Apr 2019 12:13:08 +0000"  >&lt;p&gt;My case is that I have an optional property that is a class. I want it to deserialize to null if it doesn&apos;t exist. So, the query ends up looking like&#160;&lt;br/&gt;
Property = p.Property == null ? null : new Property { ...members }&lt;br/&gt;
It works if the Property in the actual document is null, but does not work if the Property doesn&apos;t exist in the document at all (though I expect it would).&lt;br/&gt;
Example:&lt;br/&gt;
Works:&lt;/p&gt;
{
Name:&quot;something&quot;,
SomeInt: 2,
Property: null
}
&lt;p&gt;Doesn&apos;t work:&lt;/p&gt;
{
Name: &quot;something&quot;,
SomeInt: 2
}</comment>
                            <comment id="2045898" author="rbugginsvia" created="Tue, 30 Oct 2018 07:56:18 +0000"  >&lt;p&gt;Spot on -&#160;_settings.HandleNullPropagation = HandleNullPropagationOption.False has done the trick for me too - thanks for letting us know.&lt;/p&gt;

&lt;p&gt;Ross&lt;/p&gt;</comment>
                            <comment id="1938056" author="JIRAUSER1256563" created="Tue, 3 Jul 2018 17:39:09 +0000"  >&lt;p&gt;By the way, I have found a workaround to this in WebApi OData.&lt;br/&gt;
 I was calling this&#160; EntityName.Where(i =&amp;gt; i.Description.Contains(&quot;substring&quot;))&lt;br/&gt;
 And was getting error in WebApi OData&lt;/p&gt;
&lt;h6&gt;&lt;a name=&quot;%7B%7BIIF%28%28%28%5C.Contains%28%22SUBSTRING%22%29%29%29isnotsupported.%7D%7D&quot;&gt;&lt;/a&gt;&lt;tt&gt;IIF((({document}{Description} == null) OrElse False), null, Convert({document}{Description}.Contains(&quot;SUBSTRING&quot;))) is not supported.&lt;/tt&gt;&lt;/h6&gt;

&lt;p&gt;&lt;font color=&quot;#333333&quot;&gt;I simply turned off NullPropagation in the OdataQuerySettings like so:&lt;/font&gt;&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;_settings.HandleNullPropagation = HandleNullPropagationOption.False;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;And now the .Contains works great!&lt;/p&gt;

&lt;p&gt;IIF is apparently a null handling part of the expression and I would think it SHOULD be handled by the IMongoQueryable implementation. Although I would admit my knowledge of expressions and linq is limited, so I could be wrong there.&lt;/p&gt;

&lt;p&gt;I have also found that setting the _settings.EnsureStableOrdering = false; is helpful with using OrderBy&lt;/p&gt;</comment>
                            <comment id="1916362" author="teunkooijman" created="Sun, 10 Jun 2018 11:28:15 +0000"  >&lt;p&gt;Hi Omri,&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Do you perhaps have the custom .dll out on GitHub somewhere, or perhaps on a NuGet repository I could access? Would love to see what your version is capable of!&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Kind Regards,&lt;/p&gt;

&lt;p&gt;Teun&lt;/p&gt;</comment>
                            <comment id="1916264" author="omricohen" created="Sun, 10 Jun 2018 08:22:48 +0000"  >&lt;p&gt;My fixes have updated to much more than described on my last comment.&lt;br/&gt;
At the moment I have my own version of MongoDB c# driver which I maintain side by side with the official MongoDB c# driver.&lt;br/&gt;
I wish MongoDB will add the IFF support so I would go back to the official nuget packages.&lt;/p&gt;

&lt;p&gt;If any of MongoDB&apos;s developers would like me to write my changes and discuss how to merge it in, I would love to help.&lt;/p&gt;

&lt;p&gt;Cheers,&lt;br/&gt;
Omri.&lt;/p&gt;</comment>
                            <comment id="1915206" author="teunkooijman" created="Fri, 8 Jun 2018 15:05:52 +0000"  >&lt;p&gt;@Omri Cohen&apos;s fix&#160;seems easy enough, but I&apos;d hate to use a custom .dll for something so trivial. Is there any chance this is going to be fixed by the MongoDb C# Driver team themselves anytime soon?&lt;/p&gt;</comment>
                            <comment id="1760907" author="omricohen" created="Thu, 28 Dec 2017 17:57:08 +0000"  >&lt;p&gt;I forked your github repo and added few lines to the start of the Translate method and now everything works&lt;br/&gt;
I&apos;m sure it can be written better but it&apos;s a start and can help to all of the OData with MongoDB users.&lt;br/&gt;
        private FilterDefinition&amp;lt;BsonDocument&amp;gt; Translate(Expression node)&lt;br/&gt;
        {&lt;br/&gt;
            if (node is BinaryExpression binary)&lt;br/&gt;
            {&lt;br/&gt;
                if (binary.Left is ConditionalExpression conditional &amp;amp;&amp;amp; conditional.IfFalse is UnaryExpression unary)&lt;/p&gt;
                {
                    node = unary.Operand;
                }
&lt;p&gt;                if (binary.Left is UnaryExpression leftUnary)&lt;/p&gt;
                {
                    node = leftUnary;
                }
&lt;p&gt;            }&lt;br/&gt;
            if (node is ConditionalExpression ce &amp;amp;&amp;amp; ce.IfFalse is UnaryExpression ue)&lt;/p&gt;
            {
                node = ue.Operand;
            }

&lt;p&gt;            FilterDefinition&amp;lt;BsonDocument&amp;gt; filter = null;&lt;/p&gt;

&lt;p&gt;            switch (node.NodeType)&lt;br/&gt;
.&lt;br/&gt;
.&lt;br/&gt;
.&lt;br/&gt;
}&lt;/p&gt;

&lt;p&gt;@Robert Stam, any chance you&apos;ll fix this issue for the near future releases?&lt;/p&gt;

&lt;p&gt;Thanks and Merry Xmas,&lt;br/&gt;
Omri.&lt;/p&gt;</comment>
                            <comment id="1757904" author="omricohen" created="Thu, 21 Dec 2017 16:25:38 +0000"  >&lt;p&gt;Any news on this ticket?&lt;/p&gt;</comment>
                            <comment id="1464828" author="jagorath" created="Sat, 24 Dec 2016 08:26:42 +0000"  >&lt;p&gt;Another vote for this - OData filters contains, isof, startswith (and presumably others, haven&apos;t tried) can&apos;t be run against a mongo IQueryable because they require IIF support.&lt;/p&gt;</comment>
                            <comment id="1400024" author="rstam" created="Tue, 4 Oct 2016 18:59:12 +0000"  >&lt;p&gt;The driver already supports LINQ.&lt;/p&gt;

&lt;p&gt;This ticket is specifically about the IIF method not being supported by the .NET driver&apos;s LINQ implementation.&lt;/p&gt;</comment>
                            <comment id="1399483" author="omricohen" created="Tue, 4 Oct 2016 05:03:27 +0000"  >&lt;p&gt;You don&apos;t have to implement OData, just LINQ&lt;/p&gt;

</comment>
                            <comment id="1399256" author="zoxexivo@gmail.com" created="Mon, 3 Oct 2016 21:24:32 +0000"  >&lt;p&gt;I&apos;m against! I think there is no need to clutter up the C# driver with OData implementation. &lt;br/&gt;
May be in the future as additional library&lt;/p&gt;</comment>
                            <comment id="1397397" author="omricohen" created="Fri, 30 Sep 2016 10:09:58 +0000"  >&lt;p&gt;Thanks Craig,&lt;/p&gt;

&lt;p&gt;OData support can benefit mongo with new customers that wants the power of OData with the power of document db as mongo.&lt;br/&gt;
At the moment I&apos;m using the old driver in order to execute queries with LINQ.&lt;br/&gt;
I wish to abandon the old driver and work only with the new one.&lt;/p&gt;</comment>
                            <comment id="1395598" author="craiggwilson" created="Wed, 28 Sep 2016 14:16:44 +0000"  >&lt;p&gt;Thanks Omri,&lt;/p&gt;

&lt;p&gt;It appears as though we don&apos;t support this particular expression (IIF). I&apos;ll mark this as a new Feature and we&apos;ll see about implementing it.&lt;/p&gt;

&lt;p&gt;Craig&lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10011">
                    <name>Depends</name>
                                                                <inwardlinks description="is depended on by">
                                        <issuelink>
            <issuekey id="1945077">CSHARP-3989</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                            <issuelinktype id="10010">
                    <name>Duplicate</name>
                                                                <inwardlinks description="is duplicated by">
                                        <issuelink>
            <issuekey id="231384">CSHARP-1423</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="469404">CSHARP-2120</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1524334">CSHARP-3235</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="1688304">CSHARP-3614</issuekey>
        </issuelink>
            <issuelink>
            <issuekey id="237342">CSHARP-1467</issuekey>
        </issuelink>
                            </inwardlinks>
                                    </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                    <customfield id="customfield_13552" key="com.go2group.jira.plugin.crm:crm_generic_field">
                        <customfieldname>Case</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[[5002K00000pGUQ0QAO]]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|hr49uv:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </customfields>
    </item>
</channel>
</rss>