title: Linq Min() of Non-zero values
body: <p>I have a table with columns <code>OneStopPrice; MultiStopPrice; NonStopPrice</code>. I want to have <code>Min()</code> for all 3 columns. But if <code>Min()</code> of any column is 0, It must be ignored.</p>
  
  <pre><code>OneStop | NonStop | MultiStop
  -----------------------------
  233.23  | 0.0     | 355.23
  </code></pre>
  
  <p>Here NonStop must be then considered as highest value so as to ignore it.</p>
  
  <p>Anyone have idea for this using <code>LinQ</code>?</p>
  
  <p>I have used query as follows:</p>
  
  <pre><code>var data = odyResults.GroupBy(logEle =&gt; new { logEle.Air.FromCity, logEle.Air.ToCity }, (key, group) =&gt; new{
         FromCity = key.FromCity,
         ToCity = key.ToCity,
         OneStopPrice = group.Min(x=&gt;x.Air.OneStopPrice),
         MultiStopPrice = group.Min(x =&gt; x.Air.MultiStopPrice),
         NonStopPrice = group.Min(x =&gt; x.Air.NonStopPrice),
         FromToCityCount = group.Count()
        });
  </code></pre>