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:
IIS
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.
SÍ
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