2017-12-21 43 views
0

nhibernateでテーブルから2つの列を選択しています。場合thatsのではなくValue3を使用する必要がありますので、もしヌル値をチェックし、項目を2回クエリすることなく代わりに別の項目を使用するNHibernate

... 
.Select(x => new dynamic[]{x.Value1, x.Value2}) 
.FirstOrDefault(); 

Value2はnullにすることができます。

オブジェクトにクエリを実行せずにこの問題を解決する方法はありますか?ヌルかどうかを確認してからケースを再クエリしますか?

答えて

1

あなたは、私はとにかくあなたに感謝し、今少し愚かな感じを選択ラムダ

... 
Select(x => new dynamic[]{x.Value1, x.Value2 == null ? x.Value3 : x.Value2 }) 
.FirstOrDefault(); 
+0

で三項演算子を使用して試すことができます。これがもっと短くても。 'x.Value2 ?? x.Value3' – Pulle

関連する問題