<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Wed Feb 07 21:35:54 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-133] [BsonDefaultValue(null, SerializeDefaultValue = false)]  doesn&apos;t work as expected</title>
                <link>https://jira.mongodb.org/browse/CSHARP-133</link>
                <project id="10041" key="CSHARP">C# Driver</project>
                    <description>&lt;p&gt;If I have an object with a null on it for a property that is marked &quot;&lt;span class=&quot;error&quot;&gt;&amp;#91;BsonDefaultValue(null, SerializeDefaultValue = false)&amp;#93;&lt;/span&gt;&quot;, I&apos;d expect that no value would get written to the database.  But what happens is that the test code to decide whether null == null blows up because of the way it is written.&lt;/p&gt;

&lt;p&gt;Looking at the code I can see that I should have used &lt;span class=&quot;error&quot;&gt;&amp;#91;BsonIgnoreIfNull&amp;#93;&lt;/span&gt; but why isn&apos;t &lt;span class=&quot;error&quot;&gt;&amp;#91;BsonIgnoreIfNull&amp;#93;&lt;/span&gt; equivalent to &lt;span class=&quot;error&quot;&gt;&amp;#91;BsonDefaultValue(null, SerializeDefaultValue = false)&amp;#93;&lt;/span&gt;?&lt;/p&gt;

&lt;p&gt;Suggest that with a small tweak this code could be made to work whichever way a user chooses to specify that null values are the default and are to be ignored.&lt;/p&gt;

&lt;p&gt;        private void SerializeMember(&lt;br/&gt;
            BsonWriter bsonWriter,&lt;br/&gt;
            object obj,&lt;br/&gt;
            BsonMemberMap memberMap&lt;br/&gt;
        ) {&lt;br/&gt;
            var value = memberMap.Getter(obj);&lt;br/&gt;
            if (value == null &amp;amp;&amp;amp; memberMap.IgnoreIfNull) &lt;/p&gt;
{                /// SUGGEST: Make this work if memberMap.DefaultValue == null too ...
                return; // don&apos;t serialize null value
            }
&lt;p&gt;            if (memberMap.HasDefaultValue &amp;amp;&amp;amp; !memberMap.SerializeDefaultValue &amp;amp;&amp;amp; value.Equals(memberMap.DefaultValue)) &lt;/p&gt;
{
                return; // don&apos;t serialize default value
            }</description>
                <environment>Win 7</environment>
        <key id="13944">CSHARP-133</key>
            <summary>[BsonDefaultValue(null, SerializeDefaultValue = false)]  doesn&apos;t work as expected</summary>
                <type id="1" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14703&amp;avatarType=issuetype">Bug</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="ianmercer">Ian Mercer</reporter>
                        <labels>
                    </labels>
                <created>Mon, 13 Dec 2010 07:14:17 +0000</created>
                <updated>Thu, 2 Apr 2015 18:27:58 +0000</updated>
                            <resolved>Mon, 13 Dec 2010 18:06:08 +0000</resolved>
                                    <version>0.9</version>
                                    <fixVersion>1.0</fixVersion>
                                                        <votes>0</votes>
                                    <watches>0</watches>
                                                                                                                <comments>
                            <comment id="21382" author="rstam" created="Mon, 13 Dec 2010 18:06:08 +0000"  >&lt;p&gt;Fixed. Thanks for finding this.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <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|hrh9hz:</customfieldvalue>

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