gpt4 book ai didi

.net - 我的 linq 查询的返回类型是什么?

转载 作者:行者123 更新时间:2023-12-04 00:42:57 25 4
gpt4 key购买 nike

我有两个表 A 和 B。我可以触发 Linq 查询并获取各个表所需的数据。
我知道每个表将返回什么,如示例所示。
但是,当我加入这两个表时,我不知道 Linq 查询的返回类型。这个问题可以通过创建一个类来解决,该类将在其中保存 ID、名称和地址属性。但是,每次根据返回类型编写连接查询之前,我都必须创建一个类,这不是一种方便的方式
有没有其他方法可以实现这一目标

  private IList<A> GetA()
{
var query = from a in objA
select a;
return query.ToList();
}

private IList<B> GetB()
{
var query = from b in objB
select b;
return query.ToList();
}

private IList<**returnType**?> GetJoinAAndB()
{
var query = from a in objA
join b in objB
on a.ID equals b.AID
select new { a.ID, a.Name, b.Address };
return query.ToList();
}

最佳答案

您生成的值称为匿名类型,除非您返回 object,否则您可以返回它。像:

private object GetJoinAAndB()
{
var query = from a in objA
join b in objB
on a.ID equals b.AID
select new { a.ID, a.Name, b.Address };
return query.ToList();
}

有两个很好的解决方案:
1.是生成一个类来匹配输出并像Kobi解决方案一样生成它
2. 如果您使用的是 .net 4,您可以返回 dynamic输入喜欢
private dynamic GetJoinAAndB()
{
var query = from a in objA
join b in objB
on a.ID equals b.AID
select new { a.ID, a.Name, b.Address };
return query.ToList();
}

然后你可以稍后使用它。使用 dynamic的好处你可以上网搜索一下。关键字。

关于.net - 我的 linq 查询的返回类型是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5013472/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com