创建另一种类型的 htmlhelper 实例
Posted
技术标签:
【中文标题】创建另一种类型的 htmlhelper 实例【英文标题】:create htmlhelper instance of another type 【发布时间】:2013-03-23 08:21:53 【问题描述】:我有 htmlHelper 扩展方法,它可以接受一个 T 类型的模板参数。接下来,在方法内部,我想为对象中标有特殊属性的某些字段返回编辑器。问题是我将此方法称为 HtmlHelperTModel> 的实例,但在方法内部我需要 HtmlHelper 的实例T> 使用它的 Editor 方法。我试图创建这样的默认实例:
var html = new HtmlHelper<T>(new ViewContext(), new ViewPage());
但是,当然,它不起作用。 那么,我怎样才能创建正确的实例呢?
【问题讨论】:
“它不起作用”并没有告诉我们任何事情。请解释您获得的实际结果并告诉我们您期望的结果。另外,请提供更多代码来演示您要执行的操作。 【参考方案1】:我认为您不需要重新实例化它。
你有没有尝试过这样的事情:
public static IHtmlString MyExtensionMethod<T>(this HtmlHelper html, T model) where T : IMyModel
//your logic that returns a new HtmlString with html.TextBox for example
【讨论】:
以上是关于创建另一种类型的 htmlhelper 实例的主要内容,如果未能解决你的问题,请参考以下文章
无法将对象类型“System.Web.Mvc.HtmlHelper` 1 [System.Object]”转换为“System.Web.Mvc.HtmlHelper”