Asp.net mvc Razor导入的名称空间
我对UrlHelper类的扩展有问题,因为它们没有被提取。到目前为止,我已经完成了以下工作: 1将名称空间添加到位于“视图”文件夹中的web.config节中。为了确保这一点,我还将它们添加到了主web.config中 2确保csproj文件中的System.Web.Mvc引用是针对MVC3的。我还确保包含System.Web.WebPages和System.Web.Helpers参考资料 3确保csproj ProjectTypeGuid是正确的 {E53F8FEA-EAE0-44A6-8774-FFD645390401};{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc} 4检查bindingRedirect是否指向MVC3Asp.net mvc Razor导入的名称空间,asp.net-mvc,asp.net-mvc-3,Asp.net Mvc,Asp.net Mvc 3,我对UrlHelper类的扩展有问题,因为它们没有被提取。到目前为止,我已经完成了以下工作: 1将名称空间添加到位于“视图”文件夹中的web.config节中。为了确保这一点,我还将它们添加到了主web.config中 2确保csproj文件中的System.Web.Mvc引用是针对MVC3的。我还确保包含System.Web.WebPages和System.Web.Helpers参考资料 3确保csproj ProjectTypeGuid是正确的 {E53F8FEA-EAE0-44A6-877
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
在“视图”文件夹下的web.config中,添加以下内容:
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="NAMESPACE OF YOUR EXTENSION CLASS" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
</namespaces>
</pages>
和卸载/重新加载项目。如果问题仍然存在,只需在cshtml或vbhtml页面上使用@using指令并导入扩展类。顺便说一句,当你说扩展到UrlHelper时,我知道你只是有一个静态类,其中的方法将这个UrlHelper作为第一个参数。如果是这种情况,请首先使用@using指令查看它在cshtml中是否有效,然后尝试添加到web.config是否在web.config中添加了对节的引用?抱歉,这是我在第1点中的意思,谢谢。我已经完成了第1点中的第一部分-我应该更好地澄清它。UrlHelper方法如您所述,我尝试添加@using语句,但没有成功。您能粘贴您的helper类吗?这里面可能有一些非助手的东西,这就是为什么我怀疑它不起作用的原因——即使在使用@using.My mission时——从我调用@UrlHelper.BrowseLink的视图来看。。。而不是@Url.BrowseLink。。。
<pages pageBaseType="System.Web.Mvc.WebViewPage">
<namespaces>
<add namespace="NAMESPACE OF YOUR EXTENSION CLASS" />
<add namespace="System.Web.Mvc" />
<add namespace="System.Web.Mvc.Ajax" />
<add namespace="System.Web.Mvc.Html" />
<add namespace="System.Web.Routing" />
</namespaces>
</pages>