rou*_*sis 139 xml visual-studio nuget
不是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规则不断显示警告.)
Tzv*_*nov 185
只有在文件打开时才会看到它.当您在Visual Studio中关闭文件时,警告就会消失
http://nuget.codeplex.com/discussions/261638
Ste*_*eri 115
实际上,对此的正确答案是将架构添加到文档中,就像这样
<packages xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
Run Code Online (Sandbox Code Playgroud)
......你做完了:)
如果XSD尚未缓存且不可用,您可以从NuGet控制台按如下方式添加它
Install-Package NuGet.Manifest.Schema -Version 2.0.0
Run Code Online (Sandbox Code Playgroud)
完成此操作后,如下面的注释所示,您可能希望将其从当前文件夹移动到找到的官方架构文件夹中.
%VisualStudioPath%\Xml\Schemas
Run Code Online (Sandbox Code Playgroud)
Łuk*_*rak 96
您始终可以为'packages.config'创建简单的xsd架构以消除此警告.为此,请创建名为"packages.xsd"的文件:
<?xml version="1.0" encoding="utf-8" ?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"
targetNamespace="urn:packages" xmlns="urn:packages">
<xs:element name="packages">
<xs:complexType>
<xs:sequence>
<xs:element name="package" maxOccurs="unbounded">
<xs:complexType>
<xs:attribute name="id" type="xs:string" use="required" />
<xs:attribute name="version" type="xs:string" use="required" />
<xs:attribute name="targetFramework" type="xs:string" use="optional" />
<xs:attribute name="allowedVersions" type="xs:string" use="optional" />
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Run Code Online (Sandbox Code Playgroud)
该文件的位置(两个选项)
packages.xsd跨多个项目共享,请将其移动到Visual Studio Schemas文件夹(路径可能略有不同,这 D:\Program Files (x86)\Microsoft Visual Studio 10.0\Xml\Schemas对我来说).然后,编辑文件中的<packages>标签packages.config(添加xmlns属性):
<packages xmlns="urn:packages">
Run Code Online (Sandbox Code Playgroud)
现在警告应该消失(即使在Visual Studio中打开packages.config文件).
这些答案都不会永久解决您的问题.如果您转到添加XSD的路径(从Xml菜单中选择"创建模式"),您将最终遇到包管理器问题,因为它会在您添加新包时清理packages.config文件.
最好的解决方案是在不使用文件时关闭文件而忽略.
问题是,您需要一个用于packages.config.
这是创建模式的方法(我在这里找到了它):
打开您的配置文件 -> XML -> 创建架构
这将为packages.xsd您创建一个,并在 Visual Studio 中打开它:
就我而言,packages.xsd是在此路径下创建的:
C:\Users\MyUserName\AppData\Local\Temp
现在我不想引用packages.xsdTemp 文件夹中的 ,但我希望将其添加到我的解决方案并添加到源代码管理中,以便其他用户可以获取它......所以我将packages.xsd其复制并粘贴到我的解决方案文件夹中。然后我将文件添加到我的解决方案中:
1. 复制packages.xsd到与您的解决方案相同的文件夹中
2. 在 VS 中,右键单击解决方案 -> 添加 -> 现有项目...,然后添加packages.xsd
所以,现在我们已经创建packages.xsd并将其添加到解决方案中。我们需要做的就是告诉配置文件使用这个模式。
打开配置文件,然后从顶部菜单中选择:
XML -> 架构...
添加您的packages.xsd,然后选择使用此架构(见下文)
| 归档时间: |
|
| 查看次数: |
101685 次 |
| 最近记录: |