我有一个问题,这样我就可以更好地理解NuGet包、packages.config和.csproj文件。
我的理解是,NuGet包管理器>>常规中默认包管理格式的设置决定了您的项目是使用packages.config还是.csproj文件来解析和恢复包。在我的项目中,我们选择了Packages.config。
它编译和运行都没有问题。因此,我决定测试它是否会在没有.csproj文件中的dll引用的情况下运行,因为据我所知,它不使用或不需要这个。这是一个错误的假设,因为当我删除.csproj文件中的引用时,我的项目中有一个错误,项目将无法编译,因为包在packages.config文件中。
我还注意到,如果dll不在Solution Explorer的引用中,那么它也无法编译I(我假设这些是.csproj引用)。
因此,我不清楚.csproj文件在NuGet包的Packages.config管理格式中的作用以及Solution Explorer中的引用。
发布于 2020-06-12 17:05:48
不同之处在于如何管理NuGet引用。
在VS2017之前,汇编过程中要使用的NuGet包的信息存储在文件packages.config中。
自VS2017以来,有一个名为包引用的新选项,它将此信息存储在项目(.csproj)文件中。
https://devblogs.microsoft.com/nuget/migrate-packages-config-to-package-reference/
https://stackoverflow.com/questions/51549551
复制相似问题