DotNet Core 2.1 - 无法添加 DLL 引用



我有一个DotNetCore 2.1 Web App(今天刚刚从VS 2017脚手架创建它(。 此解决方案还包括 DotNet Core 2.1 Library DLL 项目。 解决方案构建正常。

我有另一个(全新的(DotNetCore 2.1 Web应用程序想要使用Library DLL。 但是当我尝试添加新引用(在"浏览"选项卡上(时,它抱怨:

发生一个或多个错误。
引用无效或不受支持。

有什么建议吗?

(奇怪的是,DLL 不会像在经典 .Net 中那样直接显示在 Bin\Debug 文件夹下; 它在 Bin\Debugetcoreapp2.1 下(

在我移动了一些代码存储库后,我收到了此错误,突然我的 .NET Core 2.1 控制台应用程序在添加时无法再识别 .NET 4.5 DLL。

事实证明,尽管损坏的引用未显示在解决方案资源管理器中,但项目文件仍包含它,以及现在损坏的 DLL 旧位置的 HintPath。从项目文件中手动删除此引用解决了这个问题。

进入你的 .csproj 并确保<Reference Include=...指向正确的目录。

例如,我的引用指向另一个项目的binDebug路径,而实际存在的唯一构建是binRelease

从 Visual Studio 2017Class Library (.NET Core)模板创建新项目时,csproj 文件包含:

<TargetFramework>netcoreapp2.1</TargetFramework>

由于这是一个库,它(显然(需要针对netstandard2.0。 (顺便说一句,从dotnet命令行命令创建库项目可以正确针对netstandard2.0。 去图。

因此,将库的 csproj 文件中的行更改为

<TargetFramework>netstandard2.0</TargetFramework>

重建库现在允许我从DotNet Core 2.1(netcoreapp2.1(应用程序引用库。

我正在将很多项目转换为 .net6,其中一个项目突然拒绝让我添加.dll文件。解决方案是先删除旧引用,然后添加新引用。(该项目引用了与新转换的文件同名的旧.dll文件。

通常Visual Studio允许我添加两个名称相同但路径不同的dll,所以我以后可以擦除旧的dll,但在这种特殊情况下,这不起作用。截图和绘画来拯救我的记忆!

就我而言,我引用了重复的.dll文件。删除重复项并更改对不同文件夹的引用后,出现上述错误。清理objbin和从根目录中删除.vs文件夹有所帮助

对我来说,我必须添加一个 nuget 包,而不是手动添加引用。我使用的是.net 6并且需要System.Drawing,所以我添加了System.Drawing.Common包。

https://www.nuget.org/packages/System.Drawing.Common/

最新更新