title: How to change a value without new projection in LINQ?
body: <p>I have the following LINQ query:</p>
  
  <pre><code>var source = from node in MyNods
               select new
               {
                   Id = node.Id,
                   Name = node.Name,
                   ParentId = node.ParentId, // Nullable
               };
  </code></pre>
  
  <p>In the query above, the <code>ParentId</code> is nullable. Now I need a new result which is match the first one but with small change that if <code>ParentId</code> is null I want it to be <code>0</code>.</p>
  
  <p>I wrote this:</p>
  
  <pre><code>var source2 =  from s in source
                 select new
                 {
                      Id = s.Id,
                      Name = s.Name,
                      ParentId = s.ParentId ?? 0, // Just change null values to 0
                 };
  </code></pre>
  
  <p>Can I implement that with a simpler way (I mean without the new projection) ?</p>
  
  <p><strong>Edit</strong>: The new projection is the same of the first one and both <code>ParentId</code> are nullable.</p>