C# 如何进行多对多LINQ实体分组查询?
我可以在这个网站上看到很多我所关注的查询的例子,但是我无法联系到它们以及它们是如何工作的。我想知道你是否能帮我 我已经在VisualStudio中与EntityDesigner建立了多对多表和关系C# 如何进行多对多LINQ实体分组查询?,c#,linq,linq-to-entities,C#,Linq,Linq To Entities,我可以在这个网站上看到很多我所关注的查询的例子,但是我无法联系到它们以及它们是如何工作的。我想知道你是否能帮我 我已经在VisualStudio中与EntityDesigner建立了多对多表和关系 tblQuotes ID | QuoteNo | Date tblItems ID | PartNo | Desc tblSuppliers ID | Supplier | email tblQIS (quotes items suppliers) ID | SupplierID | Quote
tblQuotes
ID | QuoteNo | Date
tblItems
ID | PartNo | Desc
tblSuppliers
ID | Supplier | email
tblQIS (quotes items suppliers)
ID | SupplierID | QuoteID | ItemID
我已经输入了一些测试数据,并开始尝试键入这些数据,但我认为我首先需要按报价分组,然后按供应商分组,以获得正确视图中的详细信息
var tblQuotes = from d in db.tblQuotes_Items_Suppliers
.Include(t => t.tblItems)
.Include(t => t.tblQuotes)
.Include(t => t.tblSuppliers)
group by (d.QuoteID,d.SupplierID)
select d;
有人能帮我吗?你可以试试这个:
var tblQuotes =
from d in db.tblQuotes_Items_Suppliers // or tblQIS whatever the name
group d by new
{
d.QuoteID,
d.SupplierID
} into g
select g;
这将为您提供按QuoteID和SupplierID分组的报价
更新
tblQuotes是分组引号的列表(IQueryable),因此您可以访问其他实体,如下所示:
var firstGroupOfQuotes = tblQuotes.First(); // will give you the first group of quotes
var firstQuote = firstGroupOfQuotes.First(); // will give you the first quote in the first group
var item = firstQuote.tblItems; // will give you the item of this quote
var partNo = item.PartNo; // will give you the PartNo of this item
我该如何将我的其他表放入其中,我需要来自group语句中的TOO的数据我得到的是“调用'GroupBy'时推理失败”组被下划线你的意思是“类型推理失败…”?是的类型推理抱歉,我该如何修复?你确定ID字段具有相同的数据类型吗?