2012-03-13 85 views
0

在我的ASP.NET应用程序中我有一个EF Product类的所有字符串电学性能的研究价值一个搜索(从产品 DB表得到的),我想执行的搜索功能其字符串通过使用内联LINQ字段。使用LINQ to比较有EF类

由于我预测字段(属性)的名称和数量将改变我不想强烈地将我的代码与表定义耦合。如何通过通过所有表字段(属性)迭代来比较表中所有字段的值与搜索字符串?

我知道一个选项是通过反射,有没有更简单更直接的方式来完成这项任务?

+0

可能重复(http://stackoverflow.com/questions/12844779/search-on-all-fields-of-an-entity) – 2014-04-13 09:35:36

回答

0

最后,你的EF类仍然只是一个普通的.NET类。除非EF明确提供了一些用于循环属性的库(它并不是我所知道的),否则您仍然需要使用反射来完成此操作。的[搜索上的实体的所有领域]

var properties = typeof(Product).GetProperties(BindingFlags.Instance); 
foreach (var property in properties) 
{ 
    ... 
}