我有一个DotNetCore 2.1 Web应用程序(今天刚从VS 2017脚手架创建)。该解决方案还包括DotNet Core 2.1 Library DLL项目。解决方案构建正常。
我有另一个(全新的)DotNetCore 2.1 Web App想要使用Library DLL。但是当我尝试添加新的引用时(在“浏览”选项卡上),它会抱怨:
发生了一个或多个错误 该引用无效或不受支持。
有什么建议吗?
(奇怪的是,DLL不会像在经典的.Net中一样直接出现在Bin \ Debug文件夹下;它在Bin \ Debug \ netcoreapp2.1下面)
答案 0 :(得分:2)
在我移动了一些代码存储库后,出现了此错误,突然,我的.NET Core 2.1控制台应用程序添加后不再识别.NET 4.5 DLL。
结果表明,尽管断开的引用未在解决方案资源管理器中显示,但项目文件仍包含该文件,以及现已断开的DLL的旧位置的HintPath。从项目文件中手动删除此引用即可解决。
答案 1 :(得分:1)
从Visual Studio 2017 Class Library (.NET Core)
模板创建新项目时,csproj文件包含:
<TargetFramework>netcoreapp2.1</TargetFramework>
由于这是一个库,它(显然)需要定位netstandard2.0
。 (顺便说一下,从dotnet
命令行命令创建一个库项目正确地定位netstandard2.0
。去图。)
将库的csproj文件中的行更改为
<TargetFramework>netstandard2.0</TargetFramework>
现在重建库允许我从DotNet Core 2.1(netcoreapp2.1
)应用程序中引用该库。
答案 2 :(得分:1)
进入您的.csproj,并确保<Reference Include=...
指向正确的目录。
例如,当唯一的实际构建是bin\Debug
bin\Release
路径