Hax*_*xed 1 label strongly-typed-helper asp.net-mvc-2
嗨,我有一段代码,给出了一个错误.
<%=Html.LabelFor(m => m.Id, new { @Class = "textbox-medium" })%>
Run Code Online (Sandbox Code Playgroud)
错误:
方法'LabelFor'没有重载需要'2'参数.
有谁知道如何解决这个问题?
谢谢
可能是某些内容:
public static class LabelExtensions
{
public static MvcHtmlString LabelFor<TModel, TProperty>(
this HtmlHelper<TModel> htmlHelper,
Expression<Func<TModel, TProperty>> ex,
object htmlAttributes
)
{
var metadata = ModelMetadata.FromLambdaExpression<TModel, TProperty>(ex, htmlHelper.ViewData);
var htmlFieldName = ExpressionHelper.GetExpressionText(ex);
var labelText = metadata.DisplayName;
if (string.IsNullOrEmpty(labelText))
{
labelText = htmlFieldName.Split('.').Last();
}
if (string.IsNullOrEmpty(labelText))
{
return MvcHtmlString.Empty;
}
var tagBuilder = new TagBuilder("label");
var id = htmlHelper.ViewContext.ViewData.TemplateInfo.GetFullHtmlFieldName(htmlFieldName);
tagBuilder.Attributes.Add("for", id);
var attributes = new RouteValueDictionary(htmlAttributes);
tagBuilder.MergeAttributes(attributes);
tagBuilder.SetInnerText(labelText);
return MvcHtmlString.Create(tagBuilder.ToString(TagRenderMode.Normal));
}
}
Run Code Online (Sandbox Code Playgroud)
然后:
<%= Html.LabelFor(x => x.Id, new { @class = "textbox-medium" }) %>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1272 次 |
最近记录: |