2.ASP.NET Core2.2_asp.net core项目中的Main方法

1. asp.net core项目的Main方法

image

2. Startup配置类的两个主要方法

2.1. ConfigureServices方法

用于配置应用程序需要的服务和内容。比如说第三方的插件或者自己封装的一些自定义内容等。都通过该方法进行调用。

2.2. Configure方法

该方法主要用来管理应用池里接收的各种http响应请求的管道和中间的配置都在该方法里进行使用。

Configure方法里向浏览器输出进程名

            app.Run(async (context) =>
            {
                //获取进程名
                var processName = System.Diagnostics.Process.GetCurrentProcess().ProcessName;

                //打印到浏览器
                await context.Response.WriteAsync(processName);
            });
        }

Startup配置类

public class Startup
    {
        //构造函数里引用IConfiguration服务,该服务是服务于asp.net core中用于读取各种配置、资源、信息等。
        //该服务在main方法里必须调用WebHost.CreateDefaultBuilder进行配置。否则即使注入了也无法使用该服务。
        public Startup(IConfiguration configuration)
        {
                       
            //对configuration进行依赖注入到Configuration字段
            Configuration = configuration;
        }

        //IConfiguration服务的注入容器,
        public IConfiguration Configuration { get; }
        //用于配置应用程序需要的服务和内容。比如说第三方的插件或者自己封装的一些自定义内容等。都通过该方法进行调用。
        public void ConfigureServices(IServiceCollection services)
        {
            services.Configure<CookiePolicyOptions>(options =>
            {
                // This lambda determines whether user consent for non-essential cookies is needed for a given request.
                options.CheckConsentNeeded = context => true;
                options.MinimumSameSitePolicy = SameSiteMode.None;
            });


            services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
        }

        //该方法主要用来管理应用池里接收的各种http响应请求的管道和中间的配置都在该方法里进行使用。
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            //if (env.IsDevelopment())
            //{
            //    app.UseDeveloperExceptionPage();
            //}
            //else
            //{
            //    app.UseExceptionHandler("/Error");
            //}

            //app.UseStaticFiles();
            //app.UseCookiePolicy();

            //app.UseMvc();

            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();//使用开发人员报错的中间件
            }
            app.Run(async (context) =>
            {

                var configVal=Configuration["MyKey"];

                //打印到浏览器
                await context.Response.WriteAsync(configVal);
            });
        }
    }
posted @   青仙  阅读(68)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示