在Windows服务项目中考虑一个带有多个控制器的SelfHost OWIN应用程序。
Windows服务项目包含多个服务,每个服务处理一个控制器。
似乎所有端口(4100到4102)都可以使用所有方法。问题是:
我想这可以通过Startup.cs来实现,但是怎么做?
服务1:
WebApp.Start<Startup>("http://+:4100");
服务2:
WebApp.Start<Startup>("http://+:4101");
服务3:
WebApp.Start<Startup>("http://+:4102");
和 Startup.cs:
class Startup
{
public void Configuration(IAppBuilder appBuilder)
{
HttpConfiguration config = new HttpConfiguration();
config.MapHttpAttributeRoutes();
appBuilder.UseWebApi(config);
}
}
控制器1:
public class Test1Controller : ApiController
{
[HttpPost]
[Route("post1")]
public string PostdData([FromBody] string id)
{
return "Response from post1: " + id;
}
}
控制器2:
public class Test2Controller : ApiController
{
[HttpPost]
[Route("post2")]
public string PostdData([FromBody] string id)
{
return "Response from post2: " + id;
}
}
控制器3:
public class Test3Controller : ApiController
{
[HttpPost]
[Route("post3")]
public string PostdData([FromBody] string id)
{
return "Response from post3: " + id;
}
}