Estoy tratando de migrar un proyecto Asp.Net Core RC1 a RC2 y he seguido esta documentación y también he seguido las instrucciones para la migración de DNX a .NET CLI.
Recibo el siguiente error cuando lo intento dotnet run
:
No se puede encontrar el objetivo de tiempo de ejecución para el marco '.NETCoreAPP, Versión = v1.0' compatible con uno de los tiempos de ejecución de destino: 'win10-x64, win81-x64, win8-x64, win7-x64'. Posibles Causas:
- El proyecto no se ha restaurado o la restauración ha fallado: ejecute 'dotnet restore'
- El proyecto no enumera uno de 'win10-x64, win81-x64, win7-x64' en los 'tiempos de ejecución'
He corrido dotnet restore
y parece que se ha completado con éxito.
He actualizado todos los paquetes relevantes a RC2.
Recibí este error después de actualizar la plantilla central VS2015 a 1.0.1. Fue porque tengo un PCL que se dirige
netstandard 1.4
si no quieres tener que especificar cada tiempo de ejecución, solo cambia el marcado de dependencia paraMicrosoft.NETCore.App
esto:fuente
en project.json cambié esto (tipo agregado):
Ahora puedo construir de nuevo :-)
actualización: ahora puedo construir de nuevo pero no "ejecutar" el sitio web.
Debe asegurarse de tener el tiempo de ejecución y SDK también:
https://www.microsoft.com/net/download/core#/current
fuente
Recibí este error porque utilicé el NuGet Package Manager increíblemente roto en Visual Studio 2015 para actualizar mis dependencias project.json. Resultó esto:
dentro de esto:
¡Adiós, definición de plataforma!
fuente
Si lees estos dos enlaces:
Primero, https://docs.microsoft.com/en-us/dotnet/articles/core/tutorials/using-with-xplat-cli
y
segundo, https://docs.microsoft.com/en-us/dotnet/articles/core/rid-catalog
Verá que puede crear una versión completamente portátil utilizando el siguiente fragmento en el elemento raíz de dependencias en project.json. No es necesario especificar tiempos de ejecución ya que este es un tiempo de ejecución de nivel CORE que debe ser independiente de la plataforma o conocido como "dependiente del marco"
o puede construir para múltiples plataformas específicas ("aplicaciones independientes") eliminando el tipo: elemento de plataforma como este:
Agregue esto al elemento raíz de dependencias en project.json
y agregue esto como un nuevo elemento de nivel raíz
El objetivo múltiple requiere que proporcione nombres de plataforma conocidos como ".NET Core Runtime IDentifiers (RID)". Puede encontrar una lista de estos en el segundo enlace de arriba. Incluye muchos sabores de Windows, Linux y OS X.
Para obtener una buena visión general de las diversas opciones de implementación, también puede leer esta página:
https://docs.microsoft.com/en-us/dotnet/articles/core/deploying/index
Desde el enlace de arriba:
fuente
En mi caso, acababa de actualizar todos los paquetes nuget a sus últimas versiones y nuget cambió mi referencia de paquete 'Microsoft.NETCore.App' a lo siguiente:
Lo cambié a la siguiente forma y todo funcionó bien:
Adiós 3 horas de mi vida ...
fuente
si ejecuta un dotnet nuevo y mira el proyecto de salida json, verá que los apodos han cambiado.
Realice los cambios en su project.json de la siguiente manera:
fuente
Encontré un enlace útil del comentario de svick en la siguiente página: https://github.com/dotnet/cli/issues/2442
fuente
Descubrí que necesitas lo siguiente en project.json. Esto es lo que se requería para corregir mi error:
Dependencias
Marcos
Tiempo de ejecución
Es posible que desee agregar tiempos de ejecución si planea publicar en IIS. Por favor, vea algo de la siguiente manera:
Aquí hay un consejo general que me ha funcionado bien. Cuando mis cosas se rompen, a veces creo una aplicación ASP.NET Core predeterminada, ya sea el sitio web o una API web vacía para ver las dependencias en project.json y en otros lugares. A menudo puedes atrapar muchas cosas de esa manera. Las respuestas anteriores son acertadas, pero pensé que escribiría esto aquí en caso de que alguien quisiera separar más la lógica en el formato de plantilla general que usa ASP.NET Core.
fuente
En Windows 7 con VS 2015, la solución después de actualizar a netcore 1.1.2 fue cambiar el archivo project.json de la siguiente manera:
Después de cambiar esto, las dependencias se actualizarán y violarán.
fuente