Owin Self host & ASP.Net MVC

У меня есть приложение ASP.NET. MVC, которое отлично работает в IIS. Мне нужно иметь возможность запускать одно и то же приложение из собственного консольного приложения. Как мне это сделать? Должен ли я использовать OWIN? Какой код должен выглядеть?

Ответы

Ответ 1

Обновить

Теперь, когда ASP.NET Core отсутствует, есть несколько способов самостоятельного размещения веб-приложения. Один из вариантов - использовать веб-сервер на основе OWIN, такой как Nowin.

var host = new WebHostBuilder()
    .UseNowin()
    .UseContentRoot(Directory.GetCurrentDirectory())
    .UseStartup<Startup>()
    .Build();

Кроме того, Kestrel также был популярным выбором для размещения приложений ASP.NET Core.

var host = new WebHostBuilder()
    .UseUrls("http://*:1000") // default URL
    .UseKestrel()
    .Build();

Оригинальный ответ

Вы не можете самостоятельно разместить ASP.NET MVC 5 (текущая версия MVC). Однако вы можете использовать NancyFx сегодня или посмотреть на ASP.NET vNext, который поддерживает OWIN.

Обратите внимание, что вы также можете использовать WebApi с OWIN сегодня, если вам нужно сделать одностраничные приложения (но тогда это не серверная MVC).

Ответ 2

Посмотрите на эту ссылку, она работает для меня http://www.dotnetcurry.com/showarticle.aspx?ID=896

Обновлено: Вышеуказанный комментарий действителен только для webapi, а не для сайта MVC