¿Por qué crear un proyecto de biblioteca de clases ASP.NET 5?
Hay una serie de beneficios de los proyectos de biblioteca de clases de ASP.NET 5 ( .kproj) sobre los proyectos de biblioteca de clases ( .csproj):
- Bibliotecas ASP.NET 5 clase soportan fácilmente los proyectos cross-compilar a múltiples objetivos, como
aspnet50
, aspnetcore50
, net45
, y varias otras variaciones de bibliotecas de clases portátil. Esto incluye un amplio soporte de Visual Studio para Intellisense para notificarle qué API están disponibles para qué destinos.
- Los paquetes NuGet se crean automáticamente, lo cual es algo muy común que se hace con las bibliotecas de clases.
- Mejor productividad cuando se trata de cosas como la actualización automática de Solution Explorer cuando cambia el sistema de archivos. Menos conflictos en el control de fuente al intentar fusionar cambios conflictivos en el archivo * .csproj.
- Se puede compilar multiplataforma (en parte porque no depende de MSBuild)
Puede hacer referencia a un proyecto * .csproj desde un proyecto * .kproj (esto se hizo mucho más fácil con la nueva vista previa de Visual Studio 2015), pero siempre fue posible con algunos pasos manuales.
¿Por qué el nombre tiene "ASP.NET" en él?
En lo que respecta a los nombres, es una reliquia de la historia que pronto se abordará. El nuevo tipo de proyecto es útil mucho más allá de las aplicaciones ASP.NET 5. Espere ver nuevos nombres en una vista previa futura de Visual Studio:
- Aplicación de consola .NET (multiplataforma)
- Biblioteca de clases de .NET (multiplataforma)
Actualización 13/05/2015
Con el lanzamiento de Visual Studio 2015 RC , puede ver los nombres de las plantillas de proyectos actualizados:
- Biblioteca de clases (paquete)
- Aplicación de consola (paquete)
Estos usan el project.json
archivo y el entorno de ejecución .NET (DNX) para compilar, ejecutar y empaquetar (en un paquete NuGet) el proyecto.
Estas plantillas de proyecto continúan apareciendo en el cuadro de diálogo Nuevo proyecto en el nodo "Web", pero ahora también aparecen en el nodo principal "Visual C #".