“System.Web.Mvc.HtmlHelper”不包含“RouteLink”的定义,并且找不到可接受类型为“System.Web.Mvc.HtmlHelper”的第一个参数的扩展方法“RouteLink”...
当我们在自定义扩展 DemoHtmlHelper 类的时候,经常会遇到下面这个错误。
错误 13 “System.Web.Mvc.HtmlHelper”不包含“RouteLink”的定义,并且找不到可接受类型为 “System.Web.Mvc.HtmlHelper”的第一个参数的扩展方法“RouteLink”(是否缺少 using 指令或程序集引用?) C:\Documents and Settings\Administrator\My Documents\Visual Studio 2008\projects\xxxx\xxxx\Helper\Helpers.cs 49 54 xxxx
因为 RouteLink() 方法是在静态扩展类 LinkExtensions 里面实现的,而在 HtmlHelper 类中是没有这个方法的;所以如果在自定义扩展的 DemoHtmlHelper 类使用 HtmlHelper.RouteLink() 方法会出错。
当然解决的办法也很简单:
首先在自定义扩展的 DemoHtmlHelper 类中,引入 using System.Web.Mvc.Html; 程序集即可。