【发布时间】:2012-12-27 14:46:06
【问题描述】:
我正在尝试使用以下代码在 Windows 窗体应用程序中自行托管 Web Api 服务
namespace MascoteAquarium.Desktop
{
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
var config = new HttpSelfHostConfiguration("http://localhost:8080");
config.Routes.MapHttpRoute(
"DefaultApi", "api/{controller}/id", new { id = RouteParameter.Optional });
using (HttpSelfHostServer server = new HttpSelfHostServer(config))
{
server.OpenAsync().Wait();
}
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new frmMainMenu());
}
}
}
当我尝试时
http://localhost:8080/api/*(some-controller)*
我在 System.Web.Http.SelfHost.HttpSelfHostServer.ProcessRequestContext(ChannelContext channelContext, RequestContext requestContext) 处收到 NullReferenceException
有人知道发生了什么吗?是否可以在 Win Forms 应用程序中自行托管?
【问题讨论】:
-
你解决问题了吗?
标签: c# asp.net winforms asp.net-web-api self-hosting