예제 #1
0
        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;
        }
예제 #2
0
 public OwinStartup(WebServerConfig serverConfig)
 {
     this.serverConfig = serverConfig;
 }