我已经安装了运行som代码以创建QR码所需的NuGet软件包。程序包与system.drawing.common
冲突错误CS0433'CoreCompat.System.Drawing,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = c0a7ed9c2333b592'和'System.Drawing.Common,Version = 4.0.0.1,Culture =中性,PublicKeyToken = cc7b13ffcd2ddd51'
我正在尝试这样解决:
using PixelFormat = CoreCompat.System.Drawing;
尽管它会引发错误:
错误CS0246找不到类型或名称空间名称'CoreCompat'(您是否缺少using指令或程序集引用?)
很明显,Visual Studio知道它在那里,因为否则就不会有冲突。
我尝试重新安装所有相关的NuGet软件包。
我将如何解决这个问题?
答案 0 :(得分:1)
CoreCompat是一个旧库,旨在提供与System.Drawing
兼容的API,该API可以在Core中运行,因为最初不支持System.Drawing
。从那时起,Microsoft发布了System.Drawing.Common
,这是它自己与Core兼容的System.Drawing
替代API。不知何故,您在项目中同时引用了这两者。
如果您的QR码库使用的是CoreCompat
,则您确实应该对该项目提出问题,要求他们将相关性更新为System.Drawing.Common
。或者,您可以自己进行更改并提交拉取请求。否则,或者在纠正之前,您可能需要找到其他库来使用。
依赖也可能来自其他地方。检查您自己的项目,以确保您不会将其引入。最终,您只需要在这里做一些研究,看看CoreCompat
的来源并消除它。