在 mvc4 中的剃刀代码中 @ 之后出现意外的“{”
unexpected "{" after @ in razor code in mvc4
我在 Razor 代码中呈现部分时遇到以下错误,“@”字符后出现意外的“{”。一旦进入代码块的主体(@if {}、@{} 等),您就不需要使用“@{”来切换到代码。
@if (Model.Count() > 0)
{
<div id="mReserveForTodayPartial">
@{Html.Partial("UpdateReserveForToday.mobile");}
</div>
}
请帮忙..!
Html.Partial()
return MvcHtmlString
所以你必须这样做:
@Html.Partial("UpdateReserveForToday")
在 Html.RenderPartial()
的情况下它写入输出流,这就是为什么它的 return 类型是 void
,所以在使用 Html.RenderPartial()
时你必须这样做:
@{
Html.RenderPartial("UpdateReserveForToday");
}
试试这个代码:
@{ List<SelectListItem> listItems = new List<SelectListItem>();
foreach (var item in ViewData["Subcategory"] as IEnumerable<ApplicationOneStoreForEstore.Models.tblsubcategory>) {
listItems.Add(new SelectListItem {
Text = item.subcategory_name,
Value = Convert.ToString(item.subcategory_id)
});
}
}
如果您必须绑定 DropDownList,那么您必须将这段代码放在 Html.BeginForm(..)
之前
下面的代码应该可以解决这个问题。
@if (Model.Count() > 0)
{
<div id="mReserveForTodayPartial">
Html.Partial("UpdateReserveForToday.mobile");
</div>
}
如果语句在“@{}”中可用,Razor 视图引擎可以解析代码,因此在您的代码中,“@{}”出现在 "If" 语句中,因此不需要指定再次.
我在 Razor 代码中呈现部分时遇到以下错误,“@”字符后出现意外的“{”。一旦进入代码块的主体(@if {}、@{} 等),您就不需要使用“@{”来切换到代码。
@if (Model.Count() > 0)
{
<div id="mReserveForTodayPartial">
@{Html.Partial("UpdateReserveForToday.mobile");}
</div>
}
请帮忙..!
Html.Partial()
return MvcHtmlString
所以你必须这样做:
@Html.Partial("UpdateReserveForToday")
在 Html.RenderPartial()
的情况下它写入输出流,这就是为什么它的 return 类型是 void
,所以在使用 Html.RenderPartial()
时你必须这样做:
@{
Html.RenderPartial("UpdateReserveForToday");
}
试试这个代码:
@{ List<SelectListItem> listItems = new List<SelectListItem>();
foreach (var item in ViewData["Subcategory"] as IEnumerable<ApplicationOneStoreForEstore.Models.tblsubcategory>) {
listItems.Add(new SelectListItem {
Text = item.subcategory_name,
Value = Convert.ToString(item.subcategory_id)
});
}
}
如果您必须绑定 DropDownList,那么您必须将这段代码放在 Html.BeginForm(..)
之前下面的代码应该可以解决这个问题。
@if (Model.Count() > 0)
{
<div id="mReserveForTodayPartial">
Html.Partial("UpdateReserveForToday.mobile");
</div>
}
如果语句在“@{}”中可用,Razor 视图引擎可以解析代码,因此在您的代码中,“@{}”出现在 "If" 语句中,因此不需要指定再次.