internal static int RunWebServer(WebServerConfig serverConfig) { var port = RNG.Next(10000, 60000); var startOptions = new StartOptions(); startOptions.Urls.Add(string.Format("http://localhost:{0}", port)); startOptions.Urls.Add(string.Format("http://127.0.0.1:{0}", port)); startOptions.Urls.Add(string.Format("http://{0}:{1}", Environment.MachineName, port)); var startupInstance = new OwinStartup(serverConfig); using (var cts = new CancellationTokenSource()) using (var webApp = WebApp.Start(startOptions, startupInstance.Configuration)) { Process.Start(startOptions.Urls[0]); var appContext = new WebServerApplicationContext(); Application.Run(appContext); } return 0; }
public OwinStartup(WebServerConfig serverConfig) { this.serverConfig = serverConfig; }