gpt4 book ai didi

asp.net-mvc - ASP.NET MVC 2 预览版 2 - 扩展 LabelExtensions.LabelFor

转载 作者:行者123 更新时间:2023-12-02 05:51:13 25 4
gpt4 key购买 nike

我想知道是否有人尝试在 MVC2 中为 LabelExtensions.LabelFor HtmlHelper 编写扩展助手?这对我很有用,因为我的应用程序要求我始终将标签包装在带有类属性的 标签中。我认为我可以编写一些扩展方法,而不是在 View 中重复该代码:

public static MvcHtmlString RenderLabelFor<TModel, TValue> (
this HtmlHelper html,
Expression<Func<TModel, TValue>> value,
object htmlAttributes
) where TModel : class
{
TagBuilder builder = new TagBuilder("td");
builder.MergeAttributes(new RouteValueDictionary(attributes)); // to convert an object into an IDictionary
builder.InnerHtml = LabelExtensions.LabelFor(html, value).ToString();
return MvcHtmlString.Create(builder.ToString(TagRenderMode.Normal));
}

但是我在 LabelFor 行上收到错误:

无法从用法中推断出方法“System.Web.Mvc.Html.LabelExtensions.LabelFor(System.Web.Mvc.HtmlHelper, System.Linq.Expressions.Expression>)”的类型参数。尝试显式指定类型参数。

有人可以给我一点建议吗?

最佳答案

这可能为时已晚,无法为您提供帮助,但您需要在方法签名中使用 HtmlHelper 的通用版本,如下所示:

public static MvcHtmlString RenderLabelFor<TModel, TValue> (
this HtmlHelper<TModel> html,
Expression<Func<TModel, TValue>> value,
object htmlAttributes
)
{
...
}

关于asp.net-mvc - ASP.NET MVC 2 预览版 2 - 扩展 LabelExtensions.LabelFor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1677825/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com