gpt4 book ai didi

c# - 无法转换类型 'AnonymousType#1'

转载 作者:太空狗 更新时间:2023-10-29 18:01:12 25 4
gpt4 key购买 nike

你知道如何修复这个错误吗?它在这一行中显示错误“foreach(itemColl 中的 int s)”

我必须做什么?

Error 1 Cannot convert type 'AnonymousType#1' to 'int' C:\Users\Rafal\Desktop\MVC ksiązka\moj projekt\sklep\SportsStore.WebUI\Controllers\ProductController.cs 37 21 SportsStore.WebUI

var itemColl = from p in re.Kategorie
where p.Nazwa == category
select new
{
p.Id_kat
};


foreach (int s in itemColl)
{
Console.WriteLine(s);
}

最佳答案

您正在选择 itemCollnew关键字,定义 anonymous type , 你不能申请 foreachint 循环类型。您当前的查询返回类似 IEnumerable<AnonymousType> 的内容

相反你可以这样做:

var itemColl = from p in re.Kategorie
where p.Nazwa == category
select p.Id_Kat;

这将返回 IEnumerable<int>并且您可以在当前的 foreach 循环中使用。

但是如果你想在匿名类型上使用你当前的查询,你必须用隐式类型修改你的 foreach 循环 var ,并且由于您当前的查询返回的是匿名类型对象,您可以选择 Id_kat从对象。就像是。

foreach (var s in itemColl)
{
Console.WriteLine(s.Id_kat);
}

IMO,不推荐第二种方法,因为您只是返回一个 int包裹在匿名类型中的类型。如果您可以更改查询以返回 IEnumerable<int> 会更好

关于c# - 无法转换类型 'AnonymousType#1',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11827870/

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