将MVC5 Web应用程序部署到远程服务器的问题

时间:2014-06-28 23:08:46

标签: asp.net asp.net-mvc-5 web-deployment iis-8

我有一个在我的本地计算机上运行良好的网络应用程序。 这是一个MVC 3网络应用程序,我刚刚转到MVC 5 现在,当我将其部署到删除VPS时,我收到此错误。

System.Web.WebPages.Razor,Version = 1.0.0.0不应在任何地方使用。 为什么我收到此错误?

所有配置文件都应该使用3.0.0.0 目标fremework是4.5。在VPS上安装了ASP.NET 4.5 我还没有在远程VPS上安装MVC5。

是否有关于将MVC 5部署到远程服务器的staps的文档?

3960

w3wp.exe

IIS APPPOOL \ Mysite

InvalidOperationException

预应用程序启动初始化方法启动类型Microsoft.Web.Helpers.PreApplicationStartCode引发异常,并显示以下错误消息:无法加载文件或程序集' System.Web.WebPages.Razor, Version = 1.0.0.0 ,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)。在

System.Web.Compilation.BuildManager.CallPreStartInitMethods(String)中的System.Web.Compilation.BuildManager.InvokePreStartInitMethods(ICollection`1方法)中的System.Web.Compilation.BuildManager.InvokePreStartInitMethodsCore(ICollection 1 methods, Func 1 setHostingEnvironmentCultures) System.Web.Comp.Man.Compilation.BuildManager.ExecutePreAppStart()在System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager,IApplicationHost appHost,IConfigMapPathFactory configMapPathFactory,HostingEnvironmentParameters hostingParameters,PolicyLevel policyLevel,Exception appDomainCreationException)中的preStartInitListPath,Boolean& isRefAssemblyLoaded)无法加载文件或程序集' System.Web.WebPages.Razor,Version = 1.0.0.0 ,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (来自HRESULT的异常:0x80131040),来自Microsoft.Web.Helpers.PreApplicationStartCode.Start()

1 个答案:

答案 0 :(得分:1)

在web.config中添加程序集绑定重定向:

<runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="System.Web.WebPages.Razor" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
      </dependentAssembly>
    </assemblyBinding>
</runtime>