Mik*_*ynn 12 .net c# compiler-warnings .net-assembly visual-studio
我有一个使用相同System.Runtime.Serialization.Primitives.dll
程序集的控制台应用程序和网站.但是,当我运行网站时,我的程序集是右边的那个,但是如果我运行安慰应用程序,网站的DLL会转到左边的那个并导致错误.这两个项目都是v4.7,这是在我将所有项目升级到该框架后开始的.
两个项目都有这个
<dependentAssembly>
<assemblyIdentity name="System.Runtime.Serialization.Primitives" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.1.2.0" />
</dependentAssembly>
Run Code Online (Sandbox Code Playgroud)
通过不同引用相同的DLL来解决此问题的方法:
第1步:在Visual Studio 2015上创建新的Web应用程序
第2步:检查此新Web应用程序项目中问题是否仍然存在.
如果答案为否且问题不再存在,那么:
步骤1:在" 参考"部分的原始网站(您的第一个/错误的Web应用程序)项目中跟踪导致问题的程序集引用.
第2步:删除参考
步骤3:添加新引用并从" 浏览"选项中引用程序集,而不是检查已有的引用.(如果您可以从Console项目中复制程序集DLL引用路径,这是最好的)
第4步:清理然后重建项目.
如果问题仍然存在,那么您执行的框架升级就是一个问题.
如果问题解决了,那么你已经解决了!
现在,如果问题没有在您创建的新Web应用程序项目中持续存在,但仅保留在旧网站/应用程序中,那么这意味着最初的问题是由于在框架升级到之后DLL的损坏引用V4.7
即使更新了您的网站/应用程序和新创建的Web应用程序中的引用,如果引用DLL的问题仍然存在,那么您升级到v4.7框架已损坏,您可能需要卸载并安装(或只是修复框架)升级,但我更喜欢第一个选项)框架.
由于在系统上安装了.Net v4.7后安装了Visual Studio 2017,因此IDE已经自行修复了这个微妙的问题.虽然您的Visual Studio 2015已经安装并且v4.7的框架升级以某种方式损坏,但您的2015 IDE无法在内部解决细微问题.
如果问题得到解决,那么卸载一个版本的IDE,通过将Visual Studio 2015和2017保留在同一系统上,无需占用硬盘内存.(这只是一个建议)
Microsoft 为.NET Framework v4.7提供了专用安装程序页面,针对不同版本的Visual Studio,可从此处访问:目标.NET平台.如果您希望继续使用VS2015,可能需要从上述链接下载.NET framework v4.7的全新副本,并为Visual Studio 2015安装它.
归档时间: |
|
查看次数: |
352 次 |
最近记录: |