ASP.NET MVC从视图中引用Html Helper
问题描述:
我已经编写了一个名为DetailsForm的Html Helper,以减少在视图中显示字段时的重复。在一个视图 - 实际上是一个局部视图,ASCX文件 - 我指的是这样的:ASP.NET MVC从视图中引用Html Helper
Storyboard.Helpers.DetailsForm.LabelAndData(Html, m => m.id)
不过想是指这样的:
LabelAndData(Html, m => m.id)
A“使用”指令没有按在ascx文件中似乎不允许。有没有相同的东西?
答
你应该能够导入命名空间在你的ASCX的顶部,就像这样:
<%@ Import Namespace="Storyboard.Helpers" %>
UPDATE
读你的评论,我猜你的助手看起来是这样的:
public static Something LabelAndData(this HtmlHelper html, .....
在这种情况下,你会这样称呼它在您的观点:
Html.LabelAndData(m => m.id)
希望有帮助!
答
如果您使用与您创建的默认Html助手相同的名称空间作为MVC的System.Web.Mvc.Html
,那么您无需在任何地方引用您创建的Html助手。
+0
这很有趣,知道,谢谢。 – Dan 2011-03-09 16:14:25
我得到“一个使用命名空间指令只能应用于名称空间;'Storyboard.Helpers.DetailsForm'是一个类型不是一个命名空间” – Dan 2011-03-09 16:05:29
所以我尝试使用只是Storyboard.Helpers,但它回来抱怨“名称” LabelAndData'不会在当前上下文中调用“。 – Dan 2011-03-09 16:06:53
看看我的更新:) – 2011-03-09 16:07:56