3
我在App_Code目錄中使用聲明助手時遇到問題。 我爲我的視圖創建了一個基礎webviewpage,其中有我的本地化方法。 我也有一個枚舉集合用於我的幫助器,它圍繞着CSS名稱。MVC Razor App_Code中的聲明助手不使用web.config名稱空間
例如,DataRole是一個枚舉指的是允許的CSS類用於顯示和GetStr是我的基類的方法來打印標籤的本地化值:
@helper ReadOnlyColumns(DataRole role, string label, string contents)
{
<div class="@role">@GetStr(label)</div>
}
我的web.config有基本頁面類型的定義以及要包含的正確命名空間。這些設置適用於不在App_Code目錄中的視圖。
有沒有人有任何想法如何使App_Code目錄工作?我應該把一個web.config裏面嗎?我很茫然。
我知道你可以做@implements和@using,而且工作。但是我正在試圖爲我們的軟件打下基礎,並且覺得應該包括那些在我們寫的每一頁上都會用到的東西。
編輯,這是在我的根web.config設置,每一個觀點目錄:
<configSections>
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
</sectionGroup>
</configSections>
<system.web.webPages.razor>
<host factoryType="System.Web.Mvc.MvcWebRazorHostFactory, System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<pages pageBaseType="Company.Web.BaseWebViewPage">
<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="Company.Web" />
<add namespace="Company.Web.Enums" />
</namespaces>
</pages>
</system.web.webPages.razor>
感謝,
布拉德
我只需要在所有地方使用@using。謝謝。 – BradLaney 2011-06-29 21:58:11
這很糟糕。我只是把一個web.config文件放在那裏,只是看不到它,然後運行到這個答案。真的,爲什麼!? – Triynko 2015-07-26 07:54:43