複数の基準に関する質問List(T).Where

c# collections list where-clause
複数の基準に関する質問List(T).Where

今、私は正しい情報を得ることができません

   List h = pr.Actual_View();
   foreach (TemplateHeader t in pr.TemplateView())
   {
      var v= h.Where(z => z.Country == t.Pais
                       && z.dia == t.diaTotal
                       && z.Segment == t.Segmento).FirstOrDefault();
   }

The

    pr.Actual_View()

以下のフィールドを含むリストのクラスメソッドです。

  • 国(文字列)

  • dia(int)

  • セグメント(文字列)

The

    pr.TemplateView()

同じフィールドと同じデータ型を含むリストのクラスメソッドです

リストtにはリストhよりも多くの情報が含まれている可能性があるため、いくつかの基準でリストhをフィルタリングする必要がありますが、コードを実行するとリストが正しくフィルタリングされず、nullが返されます。

  0  0


ベストアンサー

v`がnullの場合、 t`のどの値も Where`句に一致しなかったため、 FirstOrDefault`は `TemplateHeader`のデフォルト値(null)を返しました。

詳細情報やサンプルデータがなければ、「t」の値が一致しないことを「まったく」知る方法がまったくありませんが、それが「v」のnull値が示すものです。

2


タイトルとURLをコピーしました