博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
.net 程序集加载,版本不匹配的解决方法
阅读量:4658 次
发布时间:2019-06-09

本文共 897 字,大约阅读时间需要 2 分钟。

经常有些时候,A.dll引用的是Microsoft.EntityFrameworkCore.dll version=1.0.0.0 publicKeyToken="adb9793829ddae60" 这样一个程序集,但是我们现在只有Microsoft.EntityFrameworkCore.dll version=1.0.1.0 publicKeyToken="adb9793829ddae60" 这样一个程序集,在web里面,就会报一个错误:

找到的程序集清单定义与程序集引用不匹配。 (异常来自 HRESULT:0x80131040)

可以这样解决,利用程序集重定向机制

在web.config这样配置

 

方法二

用以下代码,也可以实现忽略dll版本号去加载,视乎这种做法更好,不用每个dll都写config了

protected void Application_Start(object sender, EventArgs e)        {            AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve;        }        private Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)        {            var assembly = Assembly.Load(args.Name.Split(',')[0].Trim());            return assembly;        }

 

转载于:https://www.cnblogs.com/IWings/p/5960716.html

你可能感兴趣的文章