gpt4 book ai didi

c# - 迭代列表

转载 作者:行者123 更新时间:2023-12-02 09:17:16 24 4
gpt4 key购买 nike

我有一个 Entity Framework 请求来检索许多不同的信息,使用多个内部联接,因此我使用动态列表作为返回类型,但我似乎无法找到一种方法来使其在迭代时工作。

我提出了包含 4 张 table 的请求,但我将举另一个例子来简化,假设我有 table RoomKitchen

var result = from r in Room
join k in Kitchen on r.idKitchen=k.id
where (r.id == myIDPassedAsParameter)
select new { rId = r.id, kId = k.id}
.ToList<dynamic>();

现在,当尝试访问它时,我会执行以下操作:

foreach (var r in result)
{
foreach (var item in r)
{
Console.WriteLine(item.rId + " " + item.kId);
}

}

我在第二个 foreach 上不断收到转换异常。我找不到任何方法来解决这个问题。我最初使用它是因为我返回的结果是匿名类型,所以这就是我发现可以返回的原因。

谢谢

最佳答案

正如我在评论中所说,我会这样做

private class RoomKitchenPair
{
public int RoomId { get; set; }

public int KitchenId { get; set; }
}

var result = (from r in Room
join k in Kitchen on r.IdKitchen equals k.Id
where (r.Id == myIDPassedAsParameter)
select new RoomKitchenPair { RoomId= r.Id, KitchenId = k.Id})

foreach (var r in result)
{
Console.WriteLine(r.RoomId + " - " + r.KitchenId );
}

关于c# - 迭代列表<dynamic>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45716418/

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