0

次のサンプル列があります

ID  Comment    Analyzer  Incubator    Deanalyzer
--  -------    -------   ---------    ----------
23  Need Fast  5.6                    8.7

結果を表示するために必要なのは、ID、コメント、そして値を持っていた列の数です。したがって、この場合、AnalyzerとDeanalyzerのみが値を持っているため、カウントは2になります。これは私がこれまでに持っているものです:

    var result = from tb in db.Reports
    where tb.Id == 23
    select new { ID = tb.ID, 
                 Comments = tb.Comments,
                 Count = .. 

                } 
4

1 に答える 1

1

きれいではありませんが、次のことができます。

var result = from tb in db.Reports
where tb.Id == 23
select new { ID = tb.ID, 
             Comments = tb.Comments,
             Count = (tb.Analyzer!= null ? 1 : 0) + (tb.Incubator != null ? 1 : 0) + (tb.Deanalyzer!= null ? 1 : 0)

            }

列がたくさんある場合は、これを使用しません。

于 2012-10-02T14:09:03.407 に答える