Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/333.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#_Asp.net Mvc_Entity Framework - Fatal编程技术网

C# 仅列出包含产品的类别

C# 仅列出包含产品的类别,c#,asp.net-mvc,entity-framework,C#,Asp.net Mvc,Entity Framework,我有一个具有以下结构的数据库: 类别 [PK]CatID 猫名 产品类型 [PK]TypeID 字体名 制造商 制造商ID 名字 产品 [PK]ProdID 标题 类型ID 制造商ID IsDeleted(bool) 伊希登(布尔) ProductType对于我的应用程序来说是“不相关的”,但对于导出到另一个系统来说是必需的 我想获得一个嵌套列表,其中包含类别和在products.IsDeleted和products.IsHidden上筛选的产品 像这样 类别1 Product.ProdID-产

我有一个具有以下结构的数据库:

类别
[PK]CatID
猫名

产品类型
[PK]TypeID
字体名

制造商
制造商ID
名字

产品
[PK]ProdID
标题
类型ID
制造商ID
IsDeleted(bool)
伊希登(布尔)

ProductType对于我的应用程序来说是“不相关的”,但对于导出到另一个系统来说是必需的

我想获得一个嵌套列表,其中包含类别和在products.IsDeleted和products.IsHidden上筛选的产品 像这样

类别1
Product.ProdID-产品.标题,制造商.名称

类别2
Product.ProdID-产品.标题,制造商.名称

如何使用EF以最简单的方式实现这一点

var catList = db.TypeIDs.Where(t => t.product.Count() > 0).Select(x => x.TypeCat).Distinct().ToList();   
这给了我类别,但没有筛选已删除/隐藏的产品,而不是

.Where(t => t.product.Count() > 0)
使用


嗯,那个给我的类型包含删除和隐藏的产品。这意味着我也得到了没有产品的类别。显然.Count版本给出了相同的结果,我只是以前没有注意到。没关系。。。对我的关系有一种奇怪的看法。。(数据库糟透了,奇怪的数据类型之类的东西,下一个项目:重新填充它并做一些认真的清理)现在我只得到了包含“有效”产品的类型,但我得到了那些“无效”产品。
.Where(t => t.product.Any(u => !u.IsHidden && !u.IsDeleted))