Compartir a través de


Información general de ASP.NET Core

Por Daniel Roth, Rick Anderson y Shaun Luttin

Nota:

Esta no es la versión más reciente de este artículo. Para la versión actual, consulte la versión de .NET 9 de este artículo.

Advertencia

Esta versión de ASP.NET Core ya no se admite. Para obtener más información, consulte la directiva de compatibilidad de .NET y .NET Core. Para la versión actual, consulte la versión de .NET 9 de este artículo.

Importante

Esta información hace referencia a un producto en versión preliminar, el cual puede sufrir importantes modificaciones antes de que se publique la versión comercial. Microsoft no proporciona ninguna garantía, expresa o implícita, con respecto a la información proporcionada aquí.

Para la versión actual, consulte la versión de .NET 9 de este artículo.

ASP.NET Core es un marco multiplataforma de alto rendimiento para crear aplicaciones web modernas. Este marco de código abierto permite a los desarrolladores crear aplicaciones web, servicios y API que se pueden ejecutar en Windows, macOS y Linux. Está diseñado para el desarrollo de aplicaciones a gran escala y puede controlar cualquier carga de trabajo de tamaño, lo que lo convierte en una opción sólida para las aplicaciones de nivel empresarial.

Con ASP.NET Core puede hacer lo siguiente:

  • Cree aplicaciones web y servicios, aplicaciones de Azure IoT (Internet de las cosas) y backends móviles.
  • Usar sus herramientas de desarrollo favoritas en Windows, macOS y Linux.
  • Efectuar implementaciones locales y en la nube.
  • Ejecute en .NET.

¿Por qué elegir ASP.NET Core?

Millones de desarrolladores usan o han usado ASP.NET 4.x para crear aplicaciones web. ASP.NET Core es un nuevo diseño de ASP.NET 4.x que incluye cambios en la arquitectura que dan como resultado un marco más sencillo y modular.

ASP.NET Core ofrece las siguientes ventajas:

  • Un caso unificado para crear API web y una interfaz de usuario web.
  • Diseñado para la capacidad de prueba.
  • Blazor permite usar C# en el explorador, junto con JavaScript. Comparta la lógica de aplicación del lado cliente y servidor escrita toda con. NET.
  • Razor Pages facilita y hace que los escenarios centrados en páginas sean más fáciles y productivos.
  • Capacidad para desarrollarse y ejecutarse en Windows, macOS y Linux.
  • Código abierto y centrado en la comunidad.
  • Integración de marcos modernos del lado cliente y flujos de trabajo de desarrollo.
  • Compatibilidad con el hospedaje de servicios de llamada a procedimiento remoto (RPC) mediante gRPC.
  • Un sistema de configuración basado en entorno y listo para la nube.
  • Inserción de dependencias integrada.
  • Una canalización de solicitud HTTP ligera, de alto rendimiento y modular.
  • Capacidad para hospedar en lo siguiente:
  • Control de versiones en paralelo.
  • Herramientas que simplifican el desarrollo web moderno.

Creación de API web e interfaces de usuario web mediante ASP.NET Core MVC

ASP.NET Core MVC proporciona características para crear API web y aplicaciones web:

Desarrollo del lado del cliente

ASP.NET Core incluye Blazor para crear una interfaz de usuario web enriquecidamente interactiva y también se integra con otros marcos populares de JavaScript front-end, como Angular, React, Vue y Bootstrap. Para obtener más información, vea ASP.NET Core Blazor y temas relacionados en Desarrollo del lado cliente.

Plataformas de destino de ASP.NET Core

ASP.NET Core 3.x o las versiones posteriores solo pueden tener como destino .NET.

El uso de .NET como destino cuenta con varias ventajas que van en aumento con cada versión. Entre las ventajas del uso de .NET en vez de .NET Framework se incluyen las siguientes:

Se recomienda realizar la siguiente secuencia de tutoriales a modo de introducción para desarrollar aplicaciones de ASP.NET Core:

  1. Realice el tutorial correspondiente al tipo de aplicación que quiera desarrollar o mantener.

    Tipo de aplicación Escenario Guía
    Aplicación web Desarrollo de interfaz de usuario web del lado cliente Comienza con Blazor
    Aplicación web Nuevo desarrollo de interfaz de usuario web del lado servidor Introducción a Razor Pages
    Aplicación web Mantener una aplicación de MVC Introducción a MVC
    API Web Servicios HTTP RESTful Creación de una API web
    Aplicación de llamada a procedimiento remoto Servicios de contrato primero con búferes de protocolo Introducción a un servicio gRPC
    Aplicación en tiempo real Comunicación bidireccional entre servidores y clientes conectados Comienza con SignalR
  2. Realice un tutorial que muestra cómo realizar el acceso a datos básicos.

    Escenario Guía
    Nuevo desarrollo Blazor con Entity Framework Core
    Nuevo desarrollo Razor Páginas con Entity Framework Core
    Mantener una aplicación de MVC MVC con Entity Framework Core
  3. Lea una introducción a los aspectos básicos de ASP.NET Core que se aplican a todos los tipos de aplicaciones.

  4. Examine la tabla de contenido para ver otros temas de interés.

†También hay un tutorial de API web interactivo. No es necesario instalar ninguna herramienta de desarrollo localmente. El código se ejecuta en Azure Cloud Shell en el explorador y curl se usa para realizar pruebas.

Migración desde .NET Framework

Para obtener una guía de referencia para migrar aplicaciones de ASP.NET 4.x a ASP.NET Core, consulte Actualización de ASP.NET a ASP.NET Core.

ASP.NET Core es un marco multiplataforma de alto rendimiento y de código abierto para crear aplicaciones modernas, habilitadas para la nube y conectadas a Internet. Con ASP.NET Core puede hacer lo siguiente:

¿Por qué elegir ASP.NET Core?

Millones de desarrolladores usan o han usado ASP.NET 4.x para crear aplicaciones web. ASP.NET Core es un nuevo diseño de ASP.NET 4.x que cuenta con cambios en la arquitectura que dan como resultado un marco más sencillo y modular.

ASP.NET Core ofrece las siguientes ventajas:

  • Un caso unificado para crear API web y una interfaz de usuario web.
  • Diseñado para la capacidad de prueba.
  • Blazor permite usar C# en el explorador, junto con JavaScript. Comparta la lógica de aplicación del lado cliente y servidor escrita toda con. NET.
  • Razor Pages facilita y hace que los escenarios centrados en páginas sean más fáciles y productivos.
  • Capacidad para desarrollarse y ejecutarse en Windows, macOS y Linux.
  • Código abierto y centrado en la comunidad.
  • Integración de marcos modernos del lado cliente y flujos de trabajo de desarrollo.
  • Compatibilidad con el hospedaje de servicios de llamada a procedimiento remoto (RPC) mediante gRPC.
  • Un sistema de configuración basado en entorno y listo para la nube.
  • Inserción de dependencias integrada.
  • Una canalización de solicitud HTTP ligera, de alto rendimiento y modular.
  • Capacidad para hospedar en lo siguiente:
  • Control de versiones en paralelo.
  • Herramientas que simplifican el desarrollo web moderno.

Creación de API web e interfaces de usuario web mediante ASP.NET Core MVC

ASP.NET Core MVC proporciona características para crear API web y aplicaciones web:

Desarrollo del lado del cliente

ASP.NET Core se integra perfectamente con bibliotecas y marcos populares del lado cliente, como Blazor, Angular, React, Vue y Bootstrap. Para obtener más información, vea ASP.NET Core Blazor y temas relacionados en Desarrollo del lado cliente.

ASP.NET Core con .NET Framework como destino

ASP.NET Core 2.x puede tener como destino .NET Core o .NET Framework. Las aplicaciones de ASP.NET Core que tienen como destino .NET Framework no son multiplataforma, sino que solo se ejecutan en Windows. Por lo general, ASP.NET Core 2.x se compone de bibliotecas de .NET Standard . Las bibliotecas escritas con .NET Standard 2.0 se ejecutan en cualquier plataforma .NET que implemente .NET Standard 2.0.

ASP.NET Core 2.x se admite en las versiones de .NET Framework que implementan .NET Standard 2.0:

  • Se recomienda encarecidamente usar la versión más reciente de .NET Framework.
  • .NET Framework 4.6.1 o superior.

ASP.NET Core 3.0 o las versiones posteriores solo se ejecutan en .NET Core. Para obtener más información sobre este cambio, consulte Un primer vistazo a los cambios que vienen en ASP.NET Core 3.0.

El uso de .NET Core como destino cuenta con varias ventajas que van en aumento con cada versión. Entre las ventajas del uso de .NET Core en vez de .NET Framework se incluyen las siguientes:

Para ayudar a cerrar la brecha de API de .NET Framework a .NET Core, el paquete de compatibilidad de Windows hizo miles de API solo de Windows disponibles en .NET Core. Estas API no estaban disponibles en .NET Core 1.x.

Se recomienda la siguiente secuencia de tutoriales y artículos para obtener una introducción para desarrollar aplicaciones de ASP.NET Core:

  1. Realice el tutorial correspondiente al tipo de aplicación que quiera desarrollar o mantener.

    Tipo de aplicación Escenario Guía
    Aplicación web Para un nuevo desarrollo Introducción a Razor Pages
    Aplicación web Para mantener una aplicación MVC Introducción a MVC
    API Web Creación de una API web
    Aplicación en tiempo real Comienza con SignalR
  2. Realice un tutorial que muestra cómo realizar el acceso a datos básicos.

    Escenario Guía
    Para un nuevo desarrollo Razor Páginas con Entity Framework Core
    Para mantener una aplicación MVC MVC con Entity Framework Core
  3. Lea una introducción a los aspectos básicos de ASP.NET Core que se aplican a todos los tipos de aplicaciones.

  4. Examine la tabla de contenido para ver otros temas de interés.

†También hay un tutorial de API web que se puede seguir completamente en el navegador, sin necesidad de instalar un IDE local. El código se ejecuta en Azure Cloud Shell y curl se usa para realizar pruebas.

Migración desde .NET Framework

Para obtener una guía de referencia para migrar aplicaciones de ASP.NET a ASP.NET Core, consulte Actualización de ASP.NET a ASP.NET Core.

Cómo descargar un ejemplo

En muchos de los artículos y tutoriales se incluyen vínculos a código de ejemplo.

  1. Descargue el archivo ZIP del repositorio de ASP.NET.
  2. Descomprima el archivo AspNetCore.Docs-main.zip.
  3. Para acceder a la aplicación de ejemplo de un artículo en el repositorio descomprimido, use la dirección URL del vínculo de ejemplo del artículo para ayudarle a navegar a la carpeta del ejemplo. Normalmente, el vínculo de ejemplo de un artículo aparece en la parte superior del artículo con el texto del vínculo Ver o descargar código de ejemplo.

Directivas de preprocesador en código de ejemplo

Para mostrar varios escenarios, las aplicaciones de ejemplo usan las directivas de preprocesador #define y #if-#else/#elif-#endif para compilar de forma selectiva y ejecutar secciones distintas de código de ejemplo. Para los ejemplos que usan este enfoque, establezca la directiva #define en la parte superior de los archivos C# para definir el símbolo asociado con el escenario que quiera ejecutar. Algunos ejemplos requieren la definición del símbolo en la parte superior de varios archivos para ejecutar un escenario.

Por ejemplo, la siguiente lista de símbolos de #define indica que hay cuatro escenarios disponibles (un escenario por símbolo). La configuración de ejemplo actual ejecuta el escenario TemplateCode:

#define TemplateCode // or LogFromMain or ExpandDefault or FilterInCode

Para cambiar el ejemplo el escenario ExpandDefault, defina el símbolo ExpandDefault y deje los símbolos restantes comentados:

#define ExpandDefault // TemplateCode or LogFromMain or FilterInCode

Para obtener más información sobre el uso de directivas de preprocesador de C# para compilar de forma selectiva secciones de código, vea #define (Referencia de C#) y #if (Referencia de C#).

Principales cambios y avisos de seguridad

Los cambios importantes y avisos de seguridad se notifican en el repositorio Anuncios. Los anuncios se pueden limitar a una versión específica seleccionando un filtro etiqueta .

Pasos siguientes

Para obtener más información, consulte los siguientes recursos: