MVC5编译错误
本文关键字:错误 编译 MVC5 | 更新日期: 2023-09-27 18:24:04
描述:编译资源时出错需要为该请求提供服务。请查看以下具体内容错误详细信息,并适当地修改源代码。
编译器错误消息:CS1513:}应为
我运行的代码是:
@if (Model.Criteria != null)
{
@Html.Raw("<ul>")
foreach (var value in Model.Criteria.SearchCriteria)
{
@Html.Raw("<li>" + value.Key + " - ")
var test = (Dictionary<string, object>)@value.Value;
switch (test.First().Key.ToUpper())
{
case "DDL":
<select>
@foreach (var val in (string[])test.First().Value)
{
<option value="@val">@val</option>
}
</select>
break;
case "INPUT":
@Html.TextBox(test.First().Value.ToString())
break;
}
@Html.Raw("</li>")
}
@Html.Raw("</ul>")
}
SearchCriteria也是Dictionary<string, object>
如果我删除测试变量和switch语句,它就可以正常工作。我试图理解为什么我不能将测试分配为字典对象,然后循环通过它。我做错了什么?
@Html.Raw("<li>" + @value.Key + " - ")
应该是@Html.Raw("<li>" + value.Key + " - ")
,因为在Raw()方法中,您已经在处理C#语法;价值键只是一个字符串变量。
var test = (Dictionary<string, object>)@value;
也是如此。