通过名称访问LINQ WHERE语句中的属性

四级

只是想知道这是否可能。我对实体框架上下文有各种LINQ查询,例如:

 IQueryable<MetaData> metaDataList = context.MetaData.AsQueryable();
 metaDataList = metaDataList.Where(md => md.MetaTagFilter1.Equals(keyValueMetaTagFilter.MetaTagValue, StringComparison.InvariantCultureIgnoreCase));
 metaDataList = metaDataList.Where(md => md.MetaTagFilter2.Equals(keyValueMetaTagFilter.MetaTagValue, StringComparison.InvariantCultureIgnoreCase));
 metaDataList = metaDataList.Where(md => md.MetaTagFilter3.Equals(keyValueMetaTagFilter.MetaTagValue, StringComparison.InvariantCultureIgnoreCase));

如您所见,除了所使用的属性外,它们是相同的:MetaTagFilter1,MetaTagFilter2,MetaTagFilter3。

我不想写一遍又一遍,而是想写一个“ Filter”方法,这样我就可以这样调用它:

metaDataList = metaDataList.Filter("MetaTagFilter1");  
metaDataList = metaDataList.Filter("MetaTagFilter2"); 
metaDataList = metaDataList.Filter("MetaTagFilter3"); 

因此,属性名称作为字符串传递,然后应在LINQ查询中使用此属性。

我尝试通过将属性作为Func传递并通过反射进行尝试,但是如果在LINQ查询中使用LINQ,则不能将实体的LINQ转换为这些语句。

知道这是否可行吗?

马尔滕

使用LinqKit。只要它们返回表达式树,它就允许您在查询中使用方法。

因此,基于描述要使用哪个属性的参数在方法中创建一个表达式。

参见http://www.albahari.com/nutshell/linqkit.aspx

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在linq select语句中更改输出属性名称

来自分类Dev

LINQ的WHERE子句中的IF ELSE语句

来自分类Dev

LINQ中where语句中的多个条件

来自分类Dev

在lapply语句中访问.SD属性

来自分类Dev

在Include语句中使用Where子句的Linq查询

来自分类Dev

通过名称访问动态对象属性

来自分类Dev

通过属性名称数组访问嵌套对象

来自分类Dev

LINQ语句中的串联

来自分类Dev

LINQ语句中的错误

来自分类Dev

通过属性名称动态访问类(dbcontext)属性

来自分类Dev

简化 IF 子句并在 LINQ 选择语句中查找变量的名称

来自分类Dev

MySQL如何在带有列名称的where语句中搜索JSON Array或JSON_CONTAINS

来自分类Dev

在Where Linq语句中使用具有泛型类型的==运算符

来自分类Dev

如何在LINQ WHERE语句中使用OR运算符

来自分类Dev

如何在LINQ WHERE语句中使用OR运算符

来自分类Dev

查找值List <T>并在LINQ中的where语句中用作条件

来自分类Dev

有没有办法可以延迟LINQ语句中的.Where子句?

来自分类Dev

C# linq 在 where 语句中使用 null 或空字符串

来自分类Dev

如何从xml值中获取值而不在select语句中提及其属性名称

来自分类Dev

从 LINQ 语句中的外部选择子句访问对象

来自分类Dev

在选择语句中使用EF和Linq并排除属性

来自分类Dev

如何在 if 语句中使用占位符来访问属性

来自分类Dev

通过检查sql语句中的变量值使where子句成为可选

来自分类Dev

通过变量名称访问静态对象属性

来自分类Dev

Scala:如何通过名称动态访问类属性?

来自分类Dev

通过名称访问自定义python类型属性

来自分类Dev

在if语句中询问图像名称

来自分类Dev

选择语句中的linq条件

来自分类Dev

.include()在linq语句中的位置?

Related 相关文章

热门标签

归档