2021-09-27 Core初步实战

中间件Progarm的定义添加Logging

public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args).ConfigureLogging(loggerFactory =>
            {
                loggerFactory.ClearProviders();
                loggerFactory.AddConsole();
            })
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseStartup<Startup>();
                });

 静态文件访问

 public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            app.UseStaticFiles();
            app.UseStaticFiles(new StaticFileOptions()
            {
                FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot\image")),//设置image可以访问
                RequestPath = new PathString("/a")//定义访问路径localhost:5000/a/1.png
            });
            app.Run(async (context) => { await context.Response.WriteAsync("你好,程序员"); });
          
        }

文件路径访问

 public void ConfigureServices(IServiceCollection services)
        {
            services.AddDirectoryBrowser();//添加文件夹浏览器的服务
        }

        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            app.UseStaticFiles();
            app.UseStaticFiles(new StaticFileOptions()
            {
                FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot\image")),//设置image可以访问
                RequestPath = new PathString("/b")//定义访问路径localhost:5000/b/1.png
            });
            app.UseDirectoryBrowser(new DirectoryBrowserOptions()//文件夹浏览器定义
            {
                FileProvider = new PhysicalFileProvider(Path.Combine(Directory.GetCurrentDirectory(), @"wwwroot\image")),
                RequestPath = new PathString("/b")
            });//定义访问文件夹路径
            app.Run(async (context) => { await context.Response.WriteAsync("你好,程序员"); });
        }

 默认文件修改

 public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            DefaultFilesOptions options = new DefaultFilesOptions();//配置文件
            //默认文件有:default.htm、default.html、index.htm、index.html
            options.DefaultFileNames.Clear();//清楚默认文件
            options.DefaultFileNames.Add("mydefatult.html");//添加默认文件名为mydefault.html
            app.UseDefaultFiles(options);//要在app.UseStaticFiles前面
            app.UseStaticFiles();

        }

 文件浏览器

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            var dir = new DirectoryBrowserOptions();
            dir.FileProvider = new PhysicalFileProvider(@"D:\");
            app.UseDirectoryBrowser(dir);
            var staticfile = new StaticFileOptions();
            staticfile = new StaticFileOptions();
            staticfile.FileProvider = new PhysicalFileProvider(@"D:\");
            staticfile.ServeUnknownFileTypes = true;
            staticfile.DefaultContentType = "application/x-msdownload";
            var provider = new FileExtensionContentTypeProvider();
            provider.Mappings.Add(".log", "text/plain");
            staticfile.ContentTypeProvider = provider;
            app.UseStaticFiles(staticfile);
        }
 public static IHostBuilder CreateHostBuilder(string[] args) =>
            Host.CreateDefaultBuilder(args)
                .ConfigureWebHostDefaults(webBuilder =>
                {
                    webBuilder.UseKestrel()
                    .UseContentRoot(Directory.GetCurrentDirectory())
                    .UseIISIntegration()
                    .UseUrls("http://*:8844")//可以通过ip:8844端口访问文件夹
                    .UseStartup<Startup>();
                });

 

posted @ 2022-07-05 11:03  月长生  阅读(33)  评论(0)    收藏  举报