使用ApiController连接HttpSelfHostServer

时间:2015-01-31 19:54:00

标签: c# visual-studio-2013 asp.net-web-api

我有一个简单的类TestController,它派生自ApiController并处理POST Http请求。我还有一个HttpSelfHostServer的实例,可以监听http://localhost:12357

using System;
using System.Net.Http;
using System.ServiceModel;
using System.Web.Http;
using System.Web.Http.SelfHost;

namespace RestController
{
    class Program
    {
        static void Main(string[] args)
        {
            var config = new HttpSelfHostConfiguration("http://localhost:12357");
            using (HttpSelfHostServer server = new HttpSelfHostServer(config))
            {
                server.OpenAsync().Wait();
                Console.WriteLine("Press Enter to quit.");
                Console.ReadLine();
            }
        }
    }

    public class TestController : ApiController
    {
        [HttpPost]
        public HttpResponseMessage PostMethodFactory()
        {
            return new HttpResponseMessage();
        }
    }
}

我想弄清楚如何将TestController连接到HttpSelfHostServer。如何将所有POST个请求发送到http://localhost:12357路由到TestController类?

1 个答案:

答案 0 :(得分:4)

想出来了。我只需在Main

中添加以下行
config.Routes.MapHttpRoute("default", "{*url}", new { controller = "Test" });