the tag route net how asp asp.net-core visual-studio-2015 asp.net-core-mvc

asp.net-core - route - tag helpers asp net core



¿Es posible autoevaluar una aplicación principal ASP.NET sin IIS(no API web)? (3)

Tengo una aplicación ASP.NET MVC de pleno funcionamiento (.NET Core, ASP.NET MVC 6) que funciona bien en Visual Studio (que usa IISExpress).

Ahora me gustaría tener una aplicación de consola que tome la aplicación MVC y la hospede (alojamiento propio).


¿Es posible autoevaluar una aplicación MVC 6 sin IIS (no Web API)?

Sí. De hecho, todas las aplicaciones ASP.NET Core son autohospedadas. Incluso en producción, IIS (o Nginx) son un proxy inverso para la aplicación autohospedada.

Aquí es cómo puedes intentarlo.

Primero , descargue e instale .NET Core desde aquí https://www.microsoft.com/net/core

Segundo , crea un proyecto MVC 6. Por ejemplo, clone una muestra del repositorio ASP.NET GitHub.

git clone [email protected]:aspnet/cli-samples.git cd cli-samples/HelloMvc

O use Yeoman para generar un sitio ASP.NET MVC 6 .

npm install -g yo npm install -g bower npm install -g generator-aspnet yo aspnet webbasic MyMvc6App cd MyMvc6App

Tercero , restaurar y ejecutar el proyecto.

dotnet restore dotnet run

Finalmente , navegue a localhost: 5000 en su navegador web. La aplicación MVC 6 es autohospedada.

Observe la clase Program.cs resultante, puede ver el autohospedaje. IISIntegration es opcional; solo es necesario si desea integrarse con IIS.

public class Program { public static void Main(string[] args) { var config = new ConfigurationBuilder() .AddCommandLine(args) .AddEnvironmentVariables(prefix: "ASPNETCORE_") .Build(); var host = new WebHostBuilder() .UseConfiguration(config) .UseKestrel() .UseContentRoot(Directory.GetCurrentDirectory()) .UseIISIntegration() .UseStartup<Startup>() .Build(); host.Run(); } }


Sí, ASP.NET Core es compatible con la Interfaz Web Abierta para .NET ( OWIN ), tiene dos opciones para alojar su aplicación web central Asp.net:

  1. IIS

  2. Self-Host

Sin embargo, la aplicación web autohospedada no puede reiniciarse automáticamente al arrancar y reiniciar el sistema o en caso de falla.


ASP.NET 5 está completamente desacoplado del entorno del servidor web que aloja la aplicación. ASP.NET 5 admite el alojamiento en IIS e IIS Express, y escenarios de autohospedaje utilizando los servidores HTTP Kestrel y WebListener. Además, los desarrolladores y los proveedores de software de terceros pueden crear servidores personalizados para alojar sus aplicaciones ASP.NET 5.

más información: documentación ASP.NET - Servidores