背景
当我在 VS 中使用“添加客户端库”时,它会在项目中创建
libman.json
文件,并将“构建操作”设置为“内容”,并将“复制到输出目录”设置为“如果更新则复制”。
问题
为什么创建 libman.json 时将这些属性设置为这些值?据我了解,两者都已过时,因为我们唯一必须注意的是
libman.json
应该放入源代码管理中。我错过了什么?
(可选阅读)
在具有多个项目的场景中,可能有多个
libman.json
文件,因此 如果较新则复制 设置使构建过程会覆盖其他 libman.json
文件并添加最后一个文件,而 Content 设置使发布进程也用最后一个文件覆盖其他 libman.json
文件(或者在 .NET 6 中失败,但本文不是关于如何解决这个问题)。
简单的答案(至少在 SDK 风格的 .NET 项目中)是它来自 SDK 的文件通配模式,很可能来自 Razor SDK(此处)。
任何其他文件(例如 package.json 文件)都会遇到相同的问题,包括在具有重复文件名的多项目场景中出现相同的错误。