【发布时间】:2018-05-30 16:21:07
【问题描述】:
如何使用两个连接表 A 和 B 的列表编写 Linq 查询,然后按 A 的 id 分组,以及 B 中的连接行数
例如
class A{
int Id,
int BId,
string AName
};
class B{
int Id,
string description
};
并显示如下(A 与 B 连接后)A.Bid = B.Id
A Id | count(Id) | AName
坦率地说,我必须实现从 PHP 到 LINQ 的以下查询。所有依赖项都写在下面的查询中:
select("asset.id as Id,asset.AssetBundleID as AssetBundleID,asset.GUID as GUID,asset.Name as Id,asset.Name as Id,asset.DisplayName作为 DisplayName,asset.Description 作为 Description,asset.Category 作为 Category,asset.TexturesSize 作为 TexturesSize,asset.TexturesFileSize 作为 TexturesFileSize,asset.OthersSize 作为 OthersSize,asset.id 作为 Id,asset.OthersFileSize 作为 OthersFileSize,count(*) 作为实例数")
->来自(“资产”)
->join('左连接',"assetinstance","assetinstance.AssetId=asset.Id")
->groupBy("asset.Id")
【问题讨论】:
-
你只有 1 个从 A 到 B 的引用 (
int BId),计数怎么可能不是 1? -
我知道这是一个简单的例子,但请至少让它正确,这不是在 c# 中创建类的正确方法。
-
您能否举例说明您正在使用哪些数据以及当您的源表有多行时您期望得到什么结果?另外,您已经尝试过什么?
-
@rst 我可以在表 A 中有许多具有相同 BId 的行,连接将是 a.BId=b.Id