如何使用LINQ查询布尔值



我有一个表Sub-Categories的自行车(山地自行车,旅游自行车,公路自行车,…),我创建了一个列isSelectedBoolean数据类型。我想在数据库中设置当isSelected = true每个Sub-Categories与它匹配将显示在主页上,反之亦然。

IQueryable<ProductSubcategory> list = null;
if (Id == null)
{
    list = BikesDB.ProductSubcategories;
}
else
{
    int id = Id.Value;
    list = BikesDB.ProductSubcategories.Where(m => m.ProductSubcategoryID == id
                                                   && m.NameofBike == Name
                                                   && m.isSelected == true);
}
var bikes = list.AsEnumerable().Select(
             p => new Bike { Id = p.ProductSubcategoryID, Name = p.NameofBike });
var viewModel = new CategoriesIndexViewModel
                {
                    NumberOfModel = bikes.Count(),
                    NameofBike = bikes.Select(b=>b.Name).ToList(),
                    Bikes = bikes.ToList()
                };
return this.View(viewModel);

您确定实际上设置了isSelected吗?我觉得你的linq表情看起来不错。它应该已经正确地只选择isSelected == true .

在查询完成之前,我会在调试器中查看您的列表,并确保它具有您认为的功能。

或者您正在运行第一个分支:if (Id == null),并且您的列表未被isSelected条件过滤。

相关内容

  • 没有找到相关文章

最新更新