检查Null值并使用另一个而不用两次NHibernate查询项

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了检查Null值并使用另一个而不用两次NHibernate查询项相关的知识,希望对你有一定的参考价值。

我通过nhibernate从表中选择两列。

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

Value2可以为null所以如果是这样的话它应该使用Value3代替。

有没有办法解决这个问题而不查询对象,检查它是否为null,如果是这样的话再次查询它?

答案

您可以尝试在select lambda中使用三元运算符

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

以上是关于检查Null值并使用另一个而不用两次NHibernate查询项的主要内容,如果未能解决你的问题,请参考以下文章