不是showstopper但是在项目中使用nuget时,它会创建一个具有此形状的packages.config文件
<?xml version="1.0" encoding="utf-8"?>
<packages>
... your packages
</packages>
Run Code Online (Sandbox Code Playgroud)
这会在VS中发出警告
The 'packages' element is not declared.
Run Code Online (Sandbox Code Playgroud)
问题的起源与我猜的xml声明有关.
另外我认为默认定义包不应该抛出警告.
有谁知道我应该改变它,所以我没有得到这个警告?(即使我只有在文件打开时才能看到它,它也会随着某些CA规则不断显示警告.)
因此,在Visual Studio 2017中,我在自动生成的packages.config文件中收到以下警告:
'packages'元素未声明.
这与此处的问题相同:未声明'packages'元素
共识似乎是可以安全地忽略这一警告.此外,一些评论表明,解决这个问题的尝试可能导致其他问题和/或难以维护.
例如,一位撰稿人说:
这些答案都不会永久解决您的问题.如果您转到添加XSD的路径(从Xml菜单中选择"创建模式"),您将最终遇到包管理器问题,因为它会在您添加新包时清理packages.config文件.
然而,最近的贡献者建议只需<packages>
改为<packages xmlns="urn:packages">
.这样做会使错误消失,我没有看到任何明显的问题(我的经验非常有限).
但是,我不想冒险导致Nuget出现不需要解决的警告问题.另一方面,我猜测,在VS中创建的每个项目默认都会出现此错误,因此一个简单,安全且易于维护的修复程序会很好.
所以我的底线问题是:在packages.config文件中做了什么改变<packages>
,<packages xmlns="urn:packages">
这样做有什么风险或缺点吗?