【发布时间】:2014-04-18 12:20:51
【问题描述】:
我在 razor 页面中有这段代码。
@{ var countryCode = Model.CountryCode;}
@if (countryCode.Equals("CA") || countryCode.Equals("US"))
{
@Html.DropDownListFor(m => m.ProvState, Model.Provinces)
}
else
{
@Html.TextBoxFor(m => m.ProvState, Model.ProvState);
}
我在 LocatioHelper.cshtml 中编写了这个助手
@helper RenderProvince(LocationModel model)
{
var countryCode = model.CountryCode;
if (countryCode.Equals("CA") || countryCode.Equals("US"))
{
@Html.DropDownListFor(model.ProvState, model.Provinces)
}
else
{
@Html.TextBoxFor(model.ProvState, model.ProvState);
}
}
我的错误是我必须明确指定 dropDownListFor 和 TextBoxFor 的类型,但在视图中我没有指定类型。
如何将其移入 helper 中?
【问题讨论】:
-
你所说的“帮手”到底是什么意思?
-
这是在共享 (app_code) 文件夹中使用
@helper方法的问题。如果将辅助方法放在主视图中,则可以使用@Html.方法。
标签: c# asp.net-mvc razor