无法加载文件或程序集“Microsoft.Owin,Version = 2.1.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35”或其中一个依赖项

时间:2017-05-16 20:26:12

标签: asp.net asp.net-mvc-4 asp.net-web-api owin .net-assembly

部署/发布到服务器后,我收到此错误。在我的本地它工作正常但在服务器上我收到此错误。

我在bin项目文件夹中检查了package.config和.dll版本。在这两个地方版本是相同的。

请告诉我可能出现的问题。

例外:

无法加载文件或程序集“Microsoft.Owin,Version = 2.1.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35”或其依赖项之一。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)

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

异常详细信息:System.IO.FileLoadException:无法加载文件或程序集“Microsoft.Owin,Version = 2.1.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35”或其依赖项之一。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)

来源错误:

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

程序集加载跟踪:以下信息有助于确定无法加载程序集“Microsoft.Owin,Version = 2.1.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35”的原因。

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

堆栈追踪:

[FileLoadException:无法加载文件或程序集'Microsoft.Owin,Version = 2.1.0.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)]    Owin.OwinExtensions.MapSignalR(IAppBuilder构建器,字符串路径,HubConfiguration配置)+0    CMSApp.DRGCMS.SignalR.Startup.Configuration(IAppBuilder app)+302

[TargetInvocationException:调用目标抛出了异常。]    System.RuntimeMethodHandle.InvokeMethod(Object target,Object [] arguments,Signature sig,Boolean constructor)+0    System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj,Object [] parameters,Object [] arguments)+76    System.Reflection.RuntimeMethodInfo.Invoke(Object obj,BindingFlags invokeAttr,Binder binder,Object []参数,CultureInfo文化)+211    System.Reflection.MethodBase.Invoke(Object obj,Object [] parameters)+35    Owin.Loader。<> c__DisplayClass1.b__0(IAppBuilder builder)+341    Microsoft.Owin.Host.SystemWeb.OwinAppContext.Initialize(Action 1 startup) +1043 Microsoft.Owin.Host.SystemWeb.OwinHttpModule.InitializeBlueprint() +119 System.Threading.LazyInitializer.EnsureInitializedCore(T& target, Boolean& initialized, Object& syncLock, Func 1 valueFactory)+241    Microsoft.Owin.Host.SystemWeb.OwinHttpModule.Init(HttpApplication context)+129    System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext,HttpContext context,MethodInfo [] handlers)+530    System.Web.HttpApplication.InitSpecial(HttpApplicationState状态,MethodInfo []处理程序,IntPtr appContext,HttpContext上下文)+304    System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext,HttpContext context)+404    System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext)+475

[HttpException(0x80004005):调用目标抛出了异常。]    System.Web.HttpRuntime.FirstRequestInit(HttpContext context)+12618980    System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context)+159    System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr,HttpContext context)+12458597

1 个答案:

答案 0 :(得分:3)

这是由程序集版本未匹配引起的,可以通过重定向程序集版本来解决,请参考https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/redirect-assembly-versions。 vs可以自动生成重定向,请参考https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/how-to-enable-and-disable-automatic-binding-redirection