Mvc帮助程序调用

本文关键字:调用 帮助程序 Mvc | 更新日期: 2023-09-27 18:21:54

我正在编写一些自定义帮助程序,当前的帮助程序涉及一种"数据网格控制"类型的帮助程序,我似乎遇到了一些障碍。

如果我在剃刀视图中,我可以找到类似Html.EditorFor(someExpression)的东西,但我似乎找不到在自定义助手中的助手代码上下文中这样做的方法。

实际上,我试图从助手内部调用助手。

这里有一个我能想到的最基本形式的例子:

public static MvcHtmlString Test(dynamic Model)
{
   return new MvcHtmlString( Html.textBox(Model.SomeProperty) )
}

有什么想法吗?

当我在代码中添加这样的using语句时,我发现这是多么愚蠢。。。

using Html = System.Web.Mvc.Html;

谈论简单。。。自我提醒。。。注意框架!!!

Mvc帮助程序调用

将您的helper方法改为扩展方法。

public static MvcHtmlString Test(this HtmlHelper html, dynamic Model)
{
   return new MvcHtmlString( html.textBox(Model.SomeProperty) )
}

通过首先使用方法所在的名称空间(类所在的位置),然后仅使用Html.Test(Model)