【发布时间】:2009-06-03 10:20:45
【问题描述】:
我有一个 HtmlHelper 的扩展方法:
<%= Html.MyMethod( params )%>
它在 Visual Studio 中工作,但抛出(在运行时):
编译器错误消息:CS0117:“System.Web.Mvc.HtmlHelper”不包含“MyMethod”的定义
奇怪的是这确实有效:
<%= HtmlHelperExtensions.MyMethod( Html, params ) %>
为什么我的方法不能作为扩展工作,而是作为普通的静态调用工作?
【问题讨论】:
-
您使用的是什么版本的框架?您能否也显示辅助方法签名?
-
这是一个简单的方法,类似于: public static class HtmlHelperExtensions { public static string Localise( this HtmlHelper htmlHelper, string key, params string[] args ) ...
-
我想我正在使用最新的补丁发布版本。
标签: asp.net-mvc model-view-controller extension-methods