实体名称为变量的查询

时间:2015-05-29 03:57:50

标签: entity-framework entity-framework-6

在Entity Framework 6中,是否有可能创建一个实体名称是变量的查询? 例如:

Dim Ename as string
.....
....
Dim query= From t in context.[Ename] where "condition" select t

这可能吗? 谢谢!

2 个答案:

答案 0 :(得分:0)

这可能不是通常的方式,但你可以使用

myDbContext.Set(Type.GetType("Ename"))
    .SqlQuery("SELECT * FROM dbo.Enames WHERE property = @p0", propertyValue");

查看

https://msdn.microsoft.com/en-us/library/gg679544%28v=vs.113%29.aspx
https://msdn.microsoft.com/en-us/library/w3f99sx1.aspx
https://msdn.microsoft.com/en-us/library/system.data.entity.dbset.sqlquery(v=vs.113).aspx

答案 1 :(得分:0)

另一个选择是使用这个第三方库,您可以在其中编写如下查询:

myDbContext.Set(Type.GetType("Ename"))
    .Where("condition");

查看

https://dynamiclinq.codeplex.com/
http://weblogs.asp.net/scottgu/dynamic-linq-part-1-using-the-linq-dynamic-query-library