2010-10-18 91 views
0

我覺得這篇文章: http://blog.tomasjansson.com/asp-net-mvc-helper-for-active-tab-in-tab-menu/掌握主動標籤問題ASP.NET MVC

,我想這:)

不幸的是,我是一個錯誤:

Opis: Wystąpił błąd w czasie kompilowania zasobu wymaganego do obsłużenia tego żądania. Przejrzyj poniższe szczegłowe informacje o błędzie i zmodyfikuj odpowiednio kod źrdłowy.

Komunikat o błędzie kompilatora: CS1061: Element „System.Web.Mvc.HtmlHelper」 nie zawiera definicji „ActiveTab」, a nie odnaleziono metody rozszerzającej „ActiveTab」, która przyjmuje pierwszy argument typu „System.Web.Mvc.HtmlHelper」 (czy nie brakuje dyrektywy using lub odwołania do zestawu?).

在line:

<li class="green <%=Html.ActiveTab("Home", "Index") %>"><%= Html.ActionLink("Powitanie", "Index", "Home", new { @class = "green" })%></li> 

在我的解決方案中,我有一個名爲utils的新項目。在這個項目中,我添加了新的類命名擴展(公共靜態類),我複製該文章的所有功能。我必須將對System.Web.Mvc的引用添加到該項目。我將這個Utils項目附加到主項目中,並且在發生錯誤的地方放入site.master行。

我可以得到任何sugesstions或工作示例?

問候。

回答

0

不幸的是,我不明白錯誤消息中的語言,但我懷疑問題來自您寫入的自定義擴展方法沒有納入範圍的事實。這意味着你需要在其中包含在視圖中的方法靜態類(後只是@Page指令)導入命名空間:

<%@ Import Namespace="Utils" %> 

Utils是爲你聲明的靜態擴展類的命名空間。如果不同,包含它的程序集也應該引用到Web項目中。

爲了避免導入此命名空間中的每個查看您想使用,你可以在web.config中聲明它的幫助:

<pages> 
    <namespaces> 
    <add namespace="System.Web.Mvc" /> 
    <add namespace="System.Web.Mvc.Ajax" /> 
    <add namespace="System.Web.Mvc.Html" /> 
    <add namespace="System.Web.Routing" /> 
    <add namespace="Utils" /> 
    </namespaces> 
</pages> 
+0

THX。我只是學習mvc :) – dzajdol 2010-10-18 16:21:37