Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 基于SQL语句的实体框架连接查询_C#_Sql Server_Entity Framework - Fatal编程技术网

C# 基于SQL语句的实体框架连接查询

C# 基于SQL语句的实体框架连接查询,c#,sql-server,entity-framework,C#,Sql Server,Entity Framework,我的SQL是这样的: SELECT * FROM [dbo].[INSTANCE] INNER JOIN dbo.TIME_INSTANCE on dbo.INSTANCE.INSTANCE_ID = dbo.TIME_INSTANCE.INSTANCE_ID where customer_id=15 and TIME_ID = 1013 我试着用实体框架来得到这个。我可以从instances表中按如下方式提取实例: DBContext.Instances.Where(x => x.

我的SQL是这样的:

SELECT *  FROM [dbo].[INSTANCE] 
INNER JOIN dbo.TIME_INSTANCE on dbo.INSTANCE.INSTANCE_ID = dbo.TIME_INSTANCE.INSTANCE_ID
where customer_id=15 and TIME_ID = 1013
我试着用实体框架来得到这个。我可以从instances表中按如下方式提取实例:

DBContext.Instances.Where(x => x.CustomerID == id && x.StartDateTime >= dateRange).OrderBy(x => x.StartDateTime).AsQueryable();

如何像上面的SQL那样执行连接,以便在time_实例表上执行内部连接?

quietgrit…我假设您正在寻找的Lambda也会执行相同的操作

我能够模拟这个并在我的数据库中运行它。我将对象的名称复制到下面的查询中。我使用容器而不是DbContext,但Lambda的笑话是一样的。让我知道这是否有帮助

private myDbContainer db = new myDbContainer();

var myJoin = db.INSTANCE
.Join(db.TIME_INSTANCE , i => i.PK_Category, ti => ti.FK_INSTANCE, ((i, ti) => new { INSTANCE = i,TIME_INSTANCE  = ti }))
.Select(joinedStuff => new { 
joinedStuff.INSTANCE.customer_id,//Fill in the rest of the properties you want in your query 
joinedStuff.TIME_INSTANCE.TIME_ID  
}).Where(n => n.TIME_ID  == 1013 && n.customer_id == 15);//Add an .OrderBy() and or .GroupBy() 
致以最良好的祝愿,
比尔

。包括加入实体和继续谢谢,如果您能举个例子的话,我会非常感激的。我对这方面还不熟悉。谢谢您。我希望有一种方法可以使用。包括,正如评论员指出的那样。@quietgrit您的模型是否为要加入的表定义了导航属性?没有,但我正在考虑为我需要的表添加虚拟属性。