2
有沒有辦法設置我們的MVC3應用程序來使用更新版本的Razor?我嘗試使用NuGet,但顯然必須有一些額外的佈線需要完成,因爲我沒有看到諸如URL解析和條件屬性等新功能的工作。用Razor v2替換MVC3 View Engine?
有沒有辦法設置我們的MVC3應用程序來使用更新版本的Razor?我嘗試使用NuGet,但顯然必須有一些額外的佈線需要完成,因爲我沒有看到諸如URL解析和條件屬性等新功能的工作。用Razor v2替換MVC3 View Engine?
在Asp.net論壇上詢問並發現NuGet上的RazorEngine與內置Razor View Engine不太一樣。
內部根web.config文件,添加/更新這些設置:
<appSettings>
<add key="webpages:Version" value="2.0.0.0" />
<add key="webpages:Enabled" value="true" />
<add key="PreserveLoginUrl" value="true" />
...
<add assembly="System.Web.WebPages, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Helpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
...
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
</dependentAssembly>
裏面查看web.config文件,添加/更新這些設置:
<sectionGroup name="system.web.webPages.razor" type="System.Web.WebPages.Razor.Configuration.RazorWebSectionGroup, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35">
<section name="host" type="System.Web.WebPages.Razor.Configuration.HostSection, System.Web.WebPages.Razor, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" requirePermission="false" />
<section name="pages" type="System.Web.WebPages.Razor.Configuration.RazorPagesSection, System.Web.WebPages.Razor, Version=2.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=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
您的意思是與MVC 4相關的版本?我相信即使是第一個版本,它依賴於System.Web.Mvc 3.0版本,所以在這裏也適用相同的情況。這將需要MVC 4.0 DLL ... – 2012-04-23 16:51:01
那麼爲什麼NuGet包? – Sam 2012-04-23 17:01:51
我找到了[這篇博客文章](http://dotnet.dzone.com/articles/using-razor-v2-aspnet-mvc-3),它解釋瞭如何在ASP.NET MVC 3中使用Razor V2。 – 2012-06-05 09:20:14