J'ai une application ASP .Net MVC qui fonctionne très bien sous IIS. J'ai besoin de pouvoir exécuter la même application à partir d'une application console auto-hébergée. Comment dois-je procéder? Dois-je utiliser À quoi doit ressembler le code?
Maintenant qu'ASP.NET Core est disponible, il existe plusieurs façons d'auto-héberger une application Web. Une option consiste à utiliser un serveur Web basé sur OWIN tel que Nowin .
var Host = new WebHostBuilder()
.UseNowin()
.UseContentRoot(Directory.GetCurrentDirectory())
.UseStartup<Startup>()
.Build();
Alternativement, Kestrel a également été un choix populaire pour les applications hébergeant ASP.NET Core .
var Host = new WebHostBuilder()
.UseUrls("http://*:1000") // default URL
.UseKestrel()
.Build();
Vous ne pouvez pas auto-héberger ASP.NET MVC 5 (la version actuelle de MVC). Cependant, vous pouvez utiliser NancyFx aujourd'hui ou jeter un œil à ASP.NET vNext qui prend en charge OWIN.
Notez que vous pouvez également utiliser WebApi avec OWIN aujourd'hui si vous devez créer des applications d'une seule page (mais ce n'est pas du MVC côté serveur).