首页 文章

'/'应用程序中的服务器错误 . System.Web.Http.WebHost

提问于
浏览
3

我正在尝试发布ASP.NET MVC 4 Internet应用程序 . 发布后,我继续点击我网站的链接,找到:

'/'应用程序中的

服务器错误 .

无法加载文件或程序集'System.Web.Http,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一 . 该系统找不到指定的文件 .

Description: 执行当前Web请求期间发生了未处理的异常 . 请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息 .

Exception Details: System.IO.FileNotFoundException:无法加载文件或程序集'System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'或其依赖项之一 . 该系统找不到指定的文件 .

Source Error:

在执行当前Web请求期间生成了未处理的异常 . 可以使用下面的异常堆栈跟踪来识别有关异常的起源和位置的信息 .

Assembly Load Trace: 以下信息有助于确定无法装入程序集'System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'的原因 .

WRN:程序集绑定日志记录已关闭 . 要启用程序集绑定失败日志记录,请将注册表值[HKLM \ Software \ Microsoft \ Fusion!EnableLog](DWORD)设置为1.注意:程序集绑定失败日志记录会导致一些性能损失 . 要关闭此功能,请删除注册表值[HKLM \ Software \ Microsoft \ Fusion!EnableLog] .

Stack Trace:

[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 Copy Local'属性设置为'true' . 这也没有解决问题 .

Update: System.Web.Http.WebHost的版本是4.0.20710.0

1 回答

  • 8

    问题似乎是在bin文件夹中找到已部署的程序集 .

    检查bin文件夹 - 它应该包含System.Web.Http.WebHost dll .

    如果此dll位于此文件夹中,请通过右键单击文件然后单击属性来检查版本 .

    如果它不是4.0.0.0,那么您应该部署版本4.0.0.0或尝试右键单击项目中的引用并确保“特定版本”属性设置为false .

相关问题