我正在使用针对net461框架的WinForm App。 不幸的是,此警告出现在运行时错误列表中:
找到了无法解决的不同版本的“ System.Diagnostics.DiagnosticSource”之间的冲突。将日志详细程度设置为“详细”时,这些参考冲突会在构建日志中列出。
添加到package.config并没有帮助:
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="System.Diagnostics.DiagnosticSource" version="4.4.1" targetFramework="net461" />
</packages>
有人对此有想法吗?
答案 0 :(得分:0)
通常,当不同的依赖项带来自己的System.Diagnostics.DiagnosticSource
程序集版本时,就会出现此问题。对于任何其他程序集冲突也是如此。
这种行为的原因在于.NET Framework的错误设计,还在于.NET Core依赖关系逻辑。 .NET Core coreclr
和corefx
回购版本经常会产生相同的警告,但副作用是较大的NuGet程序包,其中包含所有冲突版本的程序集,甚至是完整的框架。
警告本身是良性的,可以安全地忽略。唯一的影响是,在构建过程中,NuGet将导入更多软件包。