no es un showtopper, pero cuando usa nuget en un proyecto, crea un archivo packages.config con esta forma
<?xml version="1.0" encoding="utf-8"?>
<packages>
... your packages
</packages>
esto da una advertencia en VS
The 'packages' element is not declared.
El origen del problema tiene algo que ver con la declaración xml, supongo.
También creo que el paquete de definición predeterminado no debería arrojar advertencias.
¿Alguien sabe a qué debería cambiarlo para que no reciba esta advertencia? (es decir, incluso si puedo verlo solo cuando el archivo está abierto, también se muestra como una advertencia constantemente con ciertas reglas de CA activadas).
xml
visual-studio
nuget
crisis redonda
fuente
fuente
Respuestas:
Siempre puede hacer un esquema xsd simple para 'packages.config' para deshacerse de esta advertencia. Para hacer esto, cree un archivo llamado "packages.xsd":
Ubicación de este archivo (dos opciones)
packages.xsd
entre varios proyectos, muévalo a la carpeta Esquemas de Visual Studio (la ruta puede diferir ligeramente, esD:\Program Files (x86)\Microsoft Visual Studio 10.0\Xml\Schemas
para mí).Luego, edite la
<packages>
etiqueta en elpackages.config
archivo (agregarxmlns
atributo):Ahora la advertencia debería desaparecer (incluso si el archivo packages.config está abierto en Visual Studio).
fuente
targetFramework
atributo en el archivo de esquema xml. Recibo un errortargetFramework attribute is not defined
Lo verá solo cuando el archivo esté abierto. Cuando cierre el archivo en Visual Studio, las advertencias desaparecerán
http://nuget.codeplex.com/discussions/261638
fuente
nuget
ynuget
sabe cómo usar este archivo muy bien.En realidad, la respuesta correcta a esto es simplemente agregar el esquema a su documento, así
...y tu estas listo :)
Si el XSD aún no está en caché y no está disponible, puede agregarlo de la siguiente manera desde la consola NuGet
Una vez hecho esto, como se señala en un comentario a continuación, es posible que desee moverlo de su carpeta actual a la carpeta de esquema oficial que se encuentra en
fuente
Ninguna de las respuestas resolverá su problema de forma permanente. Si va a la ruta de agregar XSD (desde el menú Xml, seleccione "Crear esquema"), terminará teniendo problemas con el administrador de paquetes, ya que limpiará su archivo packages.config cuando agregue un nuevo paquete.
La mejor solución es ignorarlo cerrando el archivo cuando no lo use.
fuente
El problema es que necesita un esquema xsd para
packages.config
.Así es como puedes crear un esquema ( lo encontré aquí) :
Abra su archivo de configuración -> XML -> Crear esquema
Esto crearía un
packages.xsd
para usted y lo abrirá en Visual Studio:En mi caso,
packages.xsd
fue creado bajo esta ruta:C: \ Users \ MyUserName \ AppData \ Local \ Temp
Ahora no quiero hacer referencia al
packages.xsd
archivo desde una carpeta Temp, pero quiero que se agregue a mi solución y se agregue al control de origen, para que otros usuarios puedan obtenerlo ... así que copiépackages.xsd
y pegué en mi carpeta de soluciones. Luego agregué el archivo a mi solución:1. Copie
packages.xsd
en la misma carpeta que su solución2. Desde VS, haga clic derecho en la solución -> Agregar -> Elemento existente ... y luego agregue
packages.xsd
Entonces, ahora hemos creado
packages.xsd
y agregado a la Solución. Todo lo que tenemos que hacer es decirle al archivo de configuración que use este esquema.Abra el archivo de configuración, luego desde el menú superior seleccione:
XML -> Esquemas ...
Agregue su
packages.xsd
y seleccione Usar este esquema (ver más abajo)fuente
Esto sucede porque VS no conoce el esquema de este archivo. Tenga en cuenta que este archivo es más un detalle de implementación, y no es algo que normalmente necesita abrir directamente. En su lugar, puede usar el cuadro de diálogo NuGet para administrar los paquetes instalados en un proyecto.
fuente
Esto funciona y permanece incluso después de agregar un nuevo paquete:
Agregue lo siguiente! DOCTYPE sobre el elemento <packages>:
fuente