2012-10-16 43 views
5

Tôi có một dự án asp.net MVC3 tôi đã thực hiện một bản nâng cấp để asp.net mvc4 làm theo hướng dẫn này: http://www.asp.net/whitepapers/mvc4-release-notes#_Toc303253806Nâng cấp một dự án ASP.NET MVC 3 đến ASP.NET MVC 4

tôi nhận được lỗi sau khi tôi thực hiện các dự án

[A] System.Web.WebPages.Razor.Configuration.HostSection không thể được đúc tới [B] System.Web.WebPages.Razor.Configuration.HostSection. Loại A bắt nguồn từ 'System.Web.WebPages.Razor, Phiên bản = 1.0.0.0, Văn hóa = trung lập, PublicKeyToken = 31bf3856ad364e35' trong ngữ cảnh 'Mặc định' tại vị trí 'C: \ Windows \ Microsoft.Net \ assembly \ GAC_MSIL \ System.Web.WebPages.Razor \ v4.0_1.0.0.0__31bf3856ad364e35 \ System.Web.WebPages.Razor.dll '. Loại B bắt nguồn từ 'System.Web.WebPages.Razor, Version = 2.0.0.0, Văn hóa = trung lập, PublicKeyToken = 31bf3856ad364e35' trong ngữ cảnh 'Mặc định' tại vị trí 'C: \ Windows \ Microsoft.Net \ assembly \ GAC_MSIL \ System.Web.WebPages.Razor \ v4.0_2.0.0.0__31bf3856ad364e35 \ System.Web.WebPages.Razor.dll '.

+0

thay của: phải được đặt:

Trả lời

3

Hướng dẫn từng bước có thể được tìm thấy ở đây: http://www.asp.net/whitepapers/mvc4-release-notes#_Toc303253806

Cụ thể bạn quan tâm ràng buộc đổi hướng nào trong web.config của bạn.

<dependentAssembly> 
    <assemblyIdentity name="System.Web.WebPages" 
     publicKeyToken="31bf3856ad364e35" /> 
    <bindingRedirect oldVersion="1.0.0.0" newVersion="2.0.0.0"/> 
    </dependentAssembly> 

và đừng quên thêm dòng sau vào bạn <appSettings>

<add key="webpages:Version" value="2.0.0.0" /> 
+0

tôi thực hiện thay đổi này nhưng alwaz cho tôi lỗi, nhờ –

+0

Kiểm tra tham chiếu dự án của bạn đang trỏ tới phiên bản 2.0 chứ không phải 1.0. – DaveHogan

+0

Tôi đã làm sạch dự án và nó hoạt động, giúp bạn –

1

Vui lòng thay đổi webconfig của bạn trong thư mục xem dưới mã nếu bạn nâng cấp lên mvc4 từ MVC3

<configuration> 
    <configSections> 
    <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" /> 
    <pages pageBaseType="System.Web.Mvc.WebViewPage"> 
     <namespaces> 
     <add namespace="System.Web.Mvc" /> 
     <add namespace="System.Web.Mvc.Ajax" /> 
     <add namespace="System.Web.Mvc.Html" /> 
     <add namespace="System.Web.Routing" /> 
     </namespaces> 
    </pages> 
    </system.web.webPages.razor> 
<pages 
     validateRequest="false" 
     pageParserFilterType="System.Web.Mvc.ViewTypeParserFilter, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" 
     pageBaseType="System.Web.Mvc.ViewPage, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" 
     userControlBaseType="System.Web.Mvc.ViewUserControl, System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"> 
     <controls> 
     <add assembly="System.Web.Mvc, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" namespace="System.Web.Mvc" tagPrefix="mvc" /> 
     </controls> 
    </pages> 
    </system.web> 
Các vấn đề liên quan