0

我有这个简单的自托管“Hello World”应用程序,我不明白它是如何工作的 100%。

namespace HelloOwin
{
    using System;
    using Microsoft.Owin.Hosting;
    using Owin;
    using AppFunc = System.Func<System.Collections.Generic.IDictionary<string, object>, System.Threading.Tasks.Task>;

    class Program
    {
        static void Main(string[] args)
        {
            using(WebApp.Start<Startup>(url: "http://localhost:9765/"))
            {
                Console.ReadLine();
            }
        }
    }

    public class Startup
    {
        public void Configuration(IAppBuilder app)
        {
            app.Run(context =>
            {
                var task = context.Response.WriteAsync("Hello world!");
                return task;
            });
        }
    }
}

对于我对此应用程序执行的每个请求,Func定义的app.Run都运行两次,为什么会这样?

4

1 回答 1

0

预初始化调用意味着您希望在启动时调用 configureapp 之前执行的一些代码。您可以执行一些需要此操作的操作,或者某些日志记录确实取决于您的要求。

于 2017-04-18T10:18:23.670 回答