我在弄清楚如何解决此错误消息时遇到了困难:
错误CS1579 foreach语句无法对'A1.Models.Reviews'类型的变量进行操作,因为'A1.Models.Reviews'不包含'GetEnumerator'A1..NETCoreApp,Version = v1.0的公共定义
@foreach (var item in Model)
{
<content>
<header>
<hr id="ReviewsSide" />
<h6><b>@ @Html.DisplayFor(ModelItem => item.Heading)</b></h6>
</header>
<p>
Rating;
@{
int numStars = 0;
if (item.Rating == 5)
{
numStars = 5;
}
else if (item.Rating == 4)
{
numStars = 4;
}
else if (item.Rating == 3)
{
numStars = 3;
}
else if (item.Rating == 2)
{
numStars = 2;
}
else
{
numStars = 1;
}
for (int i = 0; i < numStars; i++)
{
<span style="color: #f8bd08; ">★</span>
}
for (int i = 0; i < 5 - numStars; i++)
{
<span>☆</span>
}
}
</p>
}
有任何想法吗?
我已将以下代码添加到cshtml页面的顶部,但仍然是相同的错误消息:
IEnumerable<A1.Models.Reviews>
@model Reviews
谢谢
您需要更换
IEnumerable<A1.Models.Reviews>
@model Reviews
和
@model IEnumerable<A1.Models.Reviews>
为了将一系列评论传递到您的Razor View,并能够对其进行迭代。
显示的错误意味着所传递的类型不是序列,尽管您无法对其进行迭代。
话虽这么说,您还需要确保将序列从控制器传递到View,以便这三个部分都能正常工作。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句