自 2010/2012 年以来,我就知道 Visual Studio 中的复制/粘贴引用。这是否已更新为与 Core 2 一起使用?
这是询问旧样式引用的 SO 问题(在 Core 之前,在重新启动 csproj 格式之前):是否可以在 Visual Studio 中将引用从一个项目复制/粘贴到另一个项目?
自 2010/2012 年以来,我就知道 Visual Studio 中的复制/粘贴引用。这是否已更新为与 Core 2 一起使用?
这是询问旧样式引用的 SO 问题(在 Core 之前,在重新启动 csproj 格式之前):是否可以在 Visual Studio 中将引用从一个项目复制/粘贴到另一个项目?
也许现在dotnet add package
可用,我们不需要在 VS 中复制/粘贴引用?
ASP.NET Core 2.0 的“添加 Google 社交登录”演练建议使用 dotnet CLI 添加包引用:
要使用 .NET Core CLI 安装,请在项目目录中执行以下命令:
dotnet add package Microsoft.AspNetCore.Authentication.Google
将这个答案写到我自己的问题上,这样“只使用 CLI”的人就有了点赞。
如果您正在谈论 NuGet 包引用,请不要尝试手动将解析的引用复制到 dll 文件(obj\project.assets.json
加载项目后在设计时构建期间从文件生成)。
在新的基于 SDK 的项目模型和引用 NuGet 包的 PackageReference 方式(也可用于“经典”项目)中,NuGet 引用自动在包引用之间传递。因此,当您的应用引用使用 NuGet 包的库时,您不再需要在库和应用(以及可能的测试项目)中安装 NuGet 包。
仅对于“经典”参考,此问题仍然存在。但是,如果您需要将它们导入所有项目(假设您从第三方获得了一些 .dll 文件),您可以Directory.Build.targets
在解决方案文件夹中创建一个以将它们添加到解决方案中的所有项目(从技术上讲,此文件会自动导入到目录层次结构中的所有项目中):
<Project>
<ItemGroup>
<Reference Include="AssemblyName">
<HintPath>shared-libs\AssemblyName.dll</HintPath>
</Reference>
</ItemGroup>
</Project>
(如果您想要https://stackoverflow.com/a/16580870/784387中所述的“特定版本”功能或强名称引用,您可能需要更改引用)