Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/entity-framework/4.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# 实体框架-从子列表中选择而不获取顶级对象_C#_Entity Framework_Linq To Entities - Fatal编程技术网

C# 实体框架-从子列表中选择而不获取顶级对象

C# 实体框架-从子列表中选择而不获取顶级对象,c#,entity-framework,linq-to-entities,C#,Entity Framework,Linq To Entities,在我的模型中,“用户”有“项目” 这也是在拉用户对象,但我不希望它这样做(这是白费力气) 我可以将我的项目模型更改为与用户没有对象关系,但这会破坏其他东西,因为这种关系是其他东西所需要的 实现这一目标的最佳方式是什么? 在Project类中,我可以同时拥有UserId和用户对象引用吗?用Projects而不是Users开始查询怎么样?我想您可能在项目实体中有一个Fk属性,它引用了相关的用户: var projects=_context.Projects.Where(p=>p.UserId=

在我的模型中,“用户”有“项目”

这也是在拉用户对象,但我不希望它这样做(这是白费力气)

我可以将我的项目模型更改为与用户没有对象关系,但这会破坏其他东西,因为这种关系是其他东西所需要的

实现这一目标的最佳方式是什么?
在Project类中,我可以同时拥有UserId和用户对象引用吗?

Projects
而不是
Users
开始查询怎么样?我想您可能在
项目
实体中有一个Fk属性,它引用了相关的
用户

var projects=_context.Projects.Where(p=>p.UserId==someUserId);
因此,您的
项目
实体应该具有这两个属性

public class Project
{
   //other properties


   //FYI, EF by a name convention will use this property as FK,
   //but is a good practice specify explicitly which is the FK in a relationship 
   [ForeignKey("User")]
   public int UserId{get;set;}

   public virtual User User{get;set;}
}

使用
。选择
并仅选择项目“我可以同时拥有用户ID和用户对象引用”如何?当然可以。此外,这是一种常见的做法。看看,它可能会给你一些启示。是的,这基本上回答了我关于两者兼有的问题,这确实解决了问题。希望这不会首先影响代码和表的创建。
var projects=_context.Projects.Where(p=>p.UserId==someUserId);
public class Project
{
   //other properties


   //FYI, EF by a name convention will use this property as FK,
   //but is a good practice specify explicitly which is the FK in a relationship 
   [ForeignKey("User")]
   public int UserId{get;set;}

   public virtual User User{get;set;}
}