zoukankan      html  css  js  c++  java
  • NetCore的控制台应用中搭建WebServer的方法

    一、新建NetCore控制台项目,并引入下列Nuget包:

      Microsoft.AspNetCore.StaticFiles、Microsoft.AspNetCore.Http、Microsoft.AspNetCore.Http.Abstractions、Microsoft.AspNetCore.Server.Kestrel

      

    二、新建一个Startup类。

    using System;
    using System.Threading.Tasks;
    using Microsoft.AspNetCore.Builder;
    using Microsoft.AspNetCore.Hosting;
    using Microsoft.AspNetCore.Http;
    using Microsoft.Extensions.DependencyInjection;
    using Microsoft.Extensions.Logging;
    using Microsoft.Extensions.FileProviders;
    
    namespace NetCoreWebServerDemo
    {
        public class Startup
        {
            public void ConfigureServices(IServiceCollection services)
            {
            }
            public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
            {
                var staticfile = new StaticFileOptions();
                staticfile.FileProvider = new PhysicalFileProvider(@"D:");
                app.UseStaticFiles(staticfile);
                app.Run(new Microsoft.AspNetCore.Http.RequestDelegate(HttpRequestHandler));
            }
    
            private async Task HttpRequestHandler(HttpContext context)
            {
                await context.Response.WriteAsync("hello  here is songxingzhu prov.");
            }
        }
    }

    三、在Main函数中这样写:

    using Microsoft.AspNetCore.Hosting;
    using System.IO;
    
    namespace NetCoreWebServerDemo
    {
        class Program
        {
            public static void Main(string[] args)
            {
                var host =
                    new WebHostBuilder().
                    UseKestrel().
                    UseContentRoot(Directory.GetCurrentDirectory()).
                    UseUrls("http://0.0.0.0:8080").
                    UseStartup<Startup>().Build();
    
                host.Run();
            }
    
          
        }
    }

    四、启动运行。如图,一个简单的文件服务器就搭好了。

  • 相关阅读:
    [swustoj 1021] Submissions of online judge
    [swustoj 404] 最小代价树
    [swustoj 917] K-lucky-number
    [swustoj 183] 种树
    [LA 3887] Slim Span
    [ahu 1248] NBA Finals
    用js获取当前月份的天数
    WampServer
    jquery checkbox选中、改变状态、change和click事件
    为什么排版引擎解析 CSS 选择器时一定要从右往左解析?
  • 原文地址:https://www.cnblogs.com/songxingzhu/p/6814012.html
Copyright © 2011-2022 走看看