Cloné el ASP.NET Core SignalR Repo localmente, e intente abrir la solución desde dentro del entorno siguiente.
IDE
Microsoft Visual Studio Enterprise 2015
Version 14.0.25431.01 Update 3
Microsoft .NET Framework
Version 4.6.01055
DOT NET CLI
λ dotnet --info
.NET Command Line Tools (1.0.0-preview2-1-003177)
Product Information:
Version: 1.0.0-preview2-1-003177
Commit SHA-1 hash: a2df9c2576
Runtime Environment:
OS Name: Windows
OS Version: 6.1.7601
OS Platform: Windows
RID: win7-x64
Termino viendo muchos de estos tipos de mensajes de error:
..\Repos\SignalR\src\Microsoft.AspNetCore.SignalR\Microsoft.AspNetCore.SignalR.csproj
: error: el espacio de nombres XML predeterminado del proyecto debe ser el espacio de nombres XML de MSBuild. Si el proyecto está creado en el formato MSBuild 2003, agrégueloxmlns="http://schemas.microsoft.com/developer/msbuild/2003"
al elemento. Si el proyecto se creó en el formato antiguo 1.0 o 1.2, conviértalo al formato MSBuild 2003...\Repos\SignalR\src\Microsoft.AspNetCore.SignalR\Microsoft.AspNetCore.SignalR.csproj
Quiero saber cómo solucionar esto de la manera correcta.
fuente
Respuestas:
Los proyectos que está intentando abrir están en el nuevo formato .NET Core csproj. Esto significa que debe usar Visual Studio 2017, que admite este nuevo formato.
Para un poco de historia, inicialmente se utilizó .NET Core en
project.json
lugar de*.csproj
. Sin embargo, después de una considerable deliberación interna en Microsoft, decidieron volvercsproj
pero con un formato mucho más limpio y actualizado. Sin embargo, este nuevo formato solo es compatible con VS2017.Si desea abrir los proyectos pero no quiere esperar hasta el 7 de marzo para el lanzamiento oficial de VS2017, puede usar Visual Studio Code en su lugar.
fuente
Me encontré con este problema al abrir Service Fabric GettingStartedApplication en Visual Studio 2015. La solución original se creó en .NET Core en VS 2017 y recibí el mismo error al abrir en 2015.
Estos son los pasos que seguí para resolver el problema.
Vio la siguiente línea en la etiqueta Proyecto:
<Project Sdk="Microsoft.NET.Sdk.Web" >
Seguí las instrucciones que se muestran en el mensaje de error para agregar
xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
a esta etiquetaAhora debería verse así:
Vio que ningún elemento tenía un atributo de actualización como se muestra a continuación:
Comentó eso como a continuación.
En el siguiente error: la versión en la referencia del paquete no se reconoce
Vi que la versión está en csproj xml como se muestra a continuación (líneas de referencia de paquete adicionales eliminadas por brevedad)
Despojado del atributo Versión
Ahora obtengo lo siguiente:
¡Bingo! La actualización visual Studio One-way comenzó! ¡Deja que VS haga la magia!
El proyecto se cargó pero con errores de lib de referencia.
¡Se corrigieron los errores de lib de referencia individualmente, eliminando y reemplazando en NuGet para que el proyecto funcione!
Espero que esto ayude a otro viajero de código :-D
fuente
La respuesta de @ DavidG es correcta, pero me gustaría agregar que si está compilando desde la línea de comandos, la solución equivalente es asegurarse de que está utilizando la versión adecuada de
msbuild
(en este caso particular, debe ser la versión 15).Ejecute
msbuild /?
para ver qué versión está utilizando owhere msbuild
para verificar de qué ubicación toma el ejecutable el entorno y actualice (o señale la ubicación correcta) de las herramientas si es necesario.Descargue la última herramienta de MSBuild desde aquí .
fuente
Si recibe este error al intentar compilar la aplicación .Net Core 2.0 en VSTS, asegúrese de que su definición de compilación esté utilizando la
Hosted VS2017
cola del Agente.fuente
Recibía los mismos mensajes mientras ejecutaba solo msbuild desde powershell.
dotnet msbuild "./project.csproj"
trabajó para mi.fuente
si el proyecto no es grande,
1- cambia el nombre del proyecto de carpeta
2- hacer un nuevo proyecto con el mismo proyecto (antes de renombrar)
3- agrega archivos existentes del proyecto anterior al nuevo proyecto (totalmente iguales, mismas carpetas, mismos nombres, ...)
4- abre el nuevo archivo de proyecto (como xml) y el proyecto anterior
5- copie el nuevo archivo de proyecto (contenido xml) y péguelo en el archivo de proyecto anterior
6- elimina el proyecto anterior
7- renombra el proyecto de la carpeta anterior a nombre antiguo
fuente