foo.Include(x=>;x.bar.Select(y=>;y.baz)是否在C#中包含foo.bar?
我可以使用foo.Include(x=>;x.bar.Select(y=>;y.baz)是否在C#中包含foo.bar?,c#,entity-framework,C#,Entity Framework,我可以使用foo.Include(x=>x.Bar.Select(y=>y.Baz)来包括foo.Bar,但也可以使用foo.Bar.Baz?或者我必须使用foo.Include(x=>x.Bar.Include)(x=>x.Bar.Select(y=>y.Baz)) 解决方案:(感谢) foo.Include(x=>x.Bar.Select(y=>y.Baz)包括foo.Bar和foo.Bar.Baz这显然取决于您的数据模型和ORM。但我假设您使用的是实体框架,并且您的模型如下所示: publ
foo.Include(x=>x.Bar.Select(y=>y.Baz)
来包括foo.Bar
,但也可以使用foo.Bar.Baz
?或者我必须使用foo.Include(x=>x.Bar.Include)(x=>x.Bar.Select(y=>y.Baz))
解决方案:(感谢)
foo.Include(x=>x.Bar.Select(y=>y.Baz)
包括foo.Bar
和foo.Bar.Baz
这显然取决于您的数据模型和ORM。但我假设您使用的是实体框架,并且您的模型如下所示:
public class Foo
{
public virtual Bar Bar { get; set; }
}
public class Bar
{
public virtual List<Baz> Baz { get; set; }
}
public class Baz
{
public string MyString { get; set; }
}
公共类Foo
{
公共虚拟条{get;set;}
}
公共类酒吧
{
公共虚拟列表Baz{get;set;}
}
公共类Baz
{
公共字符串MyString{get;set;}
}
如果是这样的话,那么
foo.Include(f=>f.Bar.Select(b=>b.Baz))
将包括Bar
和Baz
这显然取决于您的数据模型和ORM。但我假设您使用的是实体框架,并且您的模型如下所示:
public class Foo
{
public virtual Bar Bar { get; set; }
}
public class Bar
{
public virtual List<Baz> Baz { get; set; }
}
public class Baz
{
public string MyString { get; set; }
}
公共类Foo
{
公共虚拟条{get;set;}
}
公共类酒吧
{
公共虚拟列表Baz{get;set;}
}
公共类Baz
{
公共字符串MyString{get;set;}
}
如果是,那么
foo.Include(f=>f.Bar.Select(b=>b.Baz))
将包含Bar
和Baz
您能否给出一个示例,说明Bar
不会自动包含在其中?如果您想要Baz
,您将始终获得Bar
,使用此模型并使用include
。如果您想要避免Bar
,您应该构建一个自定义EF查询和disable偷懒加载。但我不认为这是这个问题的初衷……是的,我确实使用了EF。谢谢你为我的问题提供了解决方案。你能举一个例子,说明Bar
不会自动包括在内吗?如果你想Baz
,你总是可以使用Bar
,使用这个模型和Include
。如果你想避免条
,你应该建立一个自定义EF查询并禁用延迟加载。但我不认为这是这个问题的初衷…是的,我确实使用EF。谢谢你为我的问题提供的解决方案。