如何在一个控制台应用程序中托管asp.net网站和webapi?

时间:2016-01-30 07:39:55

标签: asp.net-mvc asp.net-mvc-4 asp.net-web-api2

控制台应用程序可以同时托管asp.net mvc网站和asp.net web api吗? 目前,锅炉板代码仅托管web api。需要弄清楚如何添加MVC网站。

class Program
{
    static void Main(string[] args)
    {
            using (WebApp.Start<Startup>("http://localhost:8080"))
            {
                Console.Write("Server Running. Press any key to exit.."); Console.ReadKey();
            }
    }
}
public class Startup
{
    public void Configuration(IAppBuilder app)
    {
        var config = new HttpConfiguration();
        config.Routes.MapHttpRoute(name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } );
        app.UseWebApi(config);
    }
}

1 个答案:

答案 0 :(得分:0)

与ASP.NET Web API相反,ASP.NET MVC(5.0)的当前稳定版本无法在IIS之外自托管。这可以通过upcoming ASP.NET Core 1.0

实现
  

需要明确的是,ASP.NET 4.6是更成熟的平台。它&#39; S   经过实战考验,今天发布并可用。 ASP.NET Core 1.0是一个   包含Web API和MVC的1.0版本,但还没有SignalR或Web页面。它还不支持VB或F#。它会有这些   有朝一日但不是今天的子系统。

     

我们不希望任何人认为ASP.NET Core 1.0已经完成了   线。它是一个新的开始和分支,但是ASP.NET 4.6   继续,发布和完全支持。有很多伟大的   东西来了,敬请期待!