我有这个查询:
(from mt in edmxObject.MyTable
where mt.Field1 != null
select mt.Field6)
.Distinct()
.ToList())
还有字段 Field2,Field3,Filed4 和 Field5 ,它们在本质上是相同的。它们具有整数,但也可以为空。
我想获取某些字段 Field1,Field2,...,Field5 是否具有值或它们具有空值。
如果我知道该列的名称是字符串“ FieldX”之类的字符串,该字符串位于集合(Field1,Field2,...,Field5)中,如何在运行时获取Linq查询与适当的列,然后在我的edmx模型上执行它以获得给定字段的值?
答案 0 :(得分:3)
我已经更新了该句子,基本上将我在选择中使用的句子添加到了clausule中。我正在使用反射来访问属性和值。
string fiealdName = "Field1";
var neL = l.Where(f => f.GetType()
.GetProperty(fiealdName).GetValue(f, null) != null)
.Select(f => f.GetType()
.GetProperty(fiealdName).GetValue(f, null)
.GetValue(f, null))
.Distinct()
.ToList();