1
我有显示供应商成功的查询,但我想现在补充的是哪家厂商已经选择或者不列显示(显示为一个复选框列)。这些选择都存储在包含FK简档,并且选择他们用户名VendorsSelected表。因此,当当前用户查看供应商时,一些供应商会匹配而不是其他供应商。返回基于记录列在表FK
如何修改查询?注意:Where子句下面将完成只得到供应商,目前用户已经选择了,但我要的是与真/假(复选框)柱子上他们已经选择了每个厂商中显示的所有供应商。
public IEnumerable<BrowseVendorModel> BrowseVendors()
{
IQueryable<BrowseVendorModel> viewModel = _db.VendorProfiles
.Include("VendorsSelected")
.Select(s => new BrowseVendorModel
{
ProfileID = s.ProfileID,
Name = s.Name,
CompanyName = s.CompanyName,
City = s.City,
State = s.State,
DateCreated = s.DateCreated
})
.Where(x => x.VendorsSelected.Select(s => s.UserName).Contains(HttpContext.Current.User.Identity.Name))
.OrderBy(v => v.ProfileID);
return viewModel;
}
OMG,我不知道你能做到这一点。我花了几年时间写SQL,但不得不重新学习LINQ方法。我要去哪里学习像你这样的LINQ忍者? :) THX – SQLGrinder 2013-03-21 22:32:19
只要继续做我猜:) – 2013-03-21 22:37:53
发布另一个LINQ忍者[问题](http://stackoverflow.com/questions/15671371/linq-to-entities-selecting-one-bool-column-from-另一个表)修改上述查询。 – SQLGrinder 2013-03-27 23:35:11