如何将文本转换为实体框架查询

时间:2014-03-29 18:46:05

标签: linq entity-framework

我需要将用户查询存储在数据库中。然后,查询将针对实体框架结构运行。所以一个例子是:

using(AdventureWorksDB aw = new 
AdventureWorksDB(Settings.Default.AdventureWorks)) {
var newSalesPeople = from p in aw.SalesPeople
                     where p.HireDate > hireDate
                     orderby p.HireDate, p.FirstName
                     select new { Name = p.FirstName + " " + p.LastName,
                                  HireDate = p.HireDate };

foreach(SalesPerson p in newSalesPeople) {
    Console.WriteLine("{0}\t{1}", p.FirstName, p.LastName);
}
}

如果将上面文件存储为文本,我怎么能将上述内容转换成一个运行的实体框架查询?还有另一种推荐的存储查询的方法,例如xml

感谢您阅读

1 个答案:

答案 0 :(得分:0)

看来ObjectContext.CreateQuery是最好的解决方案。正如它所说,它允许在运行时将查询添加到上下文 - http://msdn.microsoft.com/en-us/library/bb339670(v=vs.110).aspx。此外,将查询作为字符串存储在数据库中将是完全足够的。