C# LINQ-获取某个属性位于该属性类型的另一个结果集中的结果
我想找到BuildingPrice.ShedStyle属性将包含在ShedStyles结果中的每个BuildingPrice。其中 您可以使用任何或包含以下内容来执行此操作: 但是考虑到你的疑问,为什么你不能直接测试条件呢C# LINQ-获取某个属性位于该属性类型的另一个结果集中的结果,c#,.net,linq,entity-framework,C#,.net,Linq,Entity Framework,我想找到BuildingPrice.ShedStyle属性将包含在ShedStyles结果中的每个BuildingPrice。其中 您可以使用任何或包含以下内容来执行此操作: 但是考虑到你的疑问,为什么你不能直接测试条件呢 var prices = db.BuildingPrices.Where(p=> p.ShedStyle.Name.Contains("text")); 后一种方法似乎简单得多。您可以使用任何或包含: 但是考虑到你的疑问,为什么你不能直接测试条件呢 var price
var prices = db.BuildingPrices.Where(p=> p.ShedStyle.Name.Contains("text"));
后一种方法似乎简单得多。您可以使用任何或包含:
但是考虑到你的疑问,为什么你不能直接测试条件呢
var prices = db.BuildingPrices.Where(p=> p.ShedStyle.Name.Contains("text"));
后一种方法似乎简单得多。有点晚了,我的大脑还没有满负荷工作,因为我相信这可以通过连接来完成,但如果没有连接,我想到的就是这个。你只是有点倒退
var prices = db.BuildingPrices.Where
(
p => db.ShedStyles
.Where( s => s.Name.Contains("text"))
.Contains(p.ShedStyle)
);
现在有点晚了,我的大脑还没有满负荷工作,因为我相信这可以通过连接来完成,但如果没有连接,这就是我的想法。你只是有点倒退
var prices = db.BuildingPrices.Where
(
p => db.ShedStyles
.Where( s => s.Name.Contains("text"))
.Contains(p.ShedStyle)
);
BrokenGlass是正确的,直接通过对象查询这个将是更具表现力的方法,我到目前为止只对字符串使用了Contains,但没有意识到它与我想象中的IsAmong扩展相反-thanksBrokenGlass是正确的,直接通过对象查询这个将是我仅有的更具表现力的方法到目前为止,我在字符串中使用了Contains,但没有意识到它与我想象中的IsAmong扩展相反-Thanks我试着做一些简单的例子,但有时它们会得到更简单的解决方案,绕过了我要问的问题:所以它看起来像Any,Contains有时可以互换使用,但是w/Contains你只直接传递对象,而不是比较器。我试着做一些简单的例子,但有时它们会有更简单的解决方案,绕过我要问的问题:所以它看起来像Any,Contains有时可以互换使用,但是w/Contains您只直接传递对象而不是比较器。谢谢-我想Contains只用于字符串-不知道为什么谢谢-我想Contains只用于字符串-不知道为什么
var prices = db.BuildingPrices.Where
(
p => db.ShedStyles
.Where( s => s.Name.Contains("text"))
.Contains(p.ShedStyle)
);