我正在尝试发布ASP.NET MVC 4 Internet应用程序。在它发布之后,我继续点击我网站的链接并找到:
描述:在执行当前Web请求期间发生了未处理的异常。请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息。
异常详细信息: System.IO.FileNotFoundException:无法加载文件或程序集&System; Web.Http,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35&#39 ;或其中一个依赖项。系统找不到指定的文件。
来源错误:
在执行当前Web请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息。
程序集加载跟踪:以下信息有助于确定程序集' System.Web.Http,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35&#39的原因;无法加载。
警告:装配绑定日志记录已关闭。 要启用程序集绑定失败日志记录,请将注册表值[HKLM \ Software \ Microsoft \ Fusion!EnableLog](DWORD)设置为1。 注意:程序集绑定失败日志记录会导致一些性能损失。 要关闭此功能,请删除注册表值[HKLM \ Software \ Microsoft \ Fusion!EnableLog]。
堆栈追踪:
[FileNotFoundException:无法加载文件或程序集' System.Web.Http,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中一个依赖项。该系统找不到指定的文件。] ProyectoFinal.MvcApplication.Application_Start()位于c:\ Users \ EAGUILARCO \ Documents \ Visual Studio 2012 \ Projects \ ProyectoFinal \ ProyectoFinal \ Global.asax.cs:26
[HttpException(0x80004005):无法加载文件或程序集&System; Web.Http,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中一个依赖项。该系统找不到指定的文件。] System.Web.HttpApplicationFactory.EnsureAppStartCalledForIntegratedMode(HttpContext context,HttpApplication app)+9916613 System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext,HttpContext context,MethodInfo [] handlers)+118 System.Web.HttpApplication.InitSpecial(HttpApplicationState状态,MethodInfo []处理程序,IntPtr appContext,HttpContext上下文)+172 System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext,HttpContext context)+336 System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext)+296
[HttpException(0x80004005):无法加载文件或程序集&System; Web.Http,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其中一个依赖项。该系统找不到指定的文件。] System.Web.HttpRuntime.FirstRequestInit(HttpContext context)+9930508 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context)+101 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr,HttpContext context)+254
更新: System.Web.Http.WebHost版本为4.0.20710.0
答案 0 :(得分:8)
问题似乎是在bin文件夹中找到已部署的程序集。
检查bin文件夹 - 它应该包含System.Web.Http.WebHost dll。
如果此dll位于此文件夹中,请右键单击该文件,然后单击属性以检查版本。
如果它不是4.0.0.0,那么您应该部署版本4.0.0.0或尝试右键单击项目中的引用并确保“特定版本”属性设置为false。