重新整理.net core 计1400篇[二] (.net core 改造控制台项目)

前言

为.net core 命令行的基础上写的,如果有兴趣的话,可以去看我的.net core 前文。

下面介绍如何将.net core控制台转换为.net core web应用。

正文

如果我们要实现一个.net core web的应用,那么我们要明白这个.net core web的本质是什么?

说是本质不如说是一个web应用需要什么?

.net core web的本质 是消息处理管道完成对http请求的监听、接收处理和最终响应。

asp.net core 管道是由一个服务器和若干中间件构成,当宿主程序启动后,管道被构建出来,作为管道"龙头"的服务器就开始监听来之客户端的http请求。

好的,那么现在就来改造吧。

先把解决方案改造一下:

<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp2.2</TargetFramework>
	<RuntimeIdentifier>win10-x64</RuntimeIdentifier>
  </PropertyGroup>
  <ItemGroup>
     <FrameworkReference Include="Microsoft.AspNetCore.App"/>
  </ItemGroup>
</Project>

那么比上一节多了一个:

 <ItemGroup>
     <FrameworkReference Include="Microsoft.AspNetCore.App"/>
  </ItemGroup>

添加了Microsoft.AspNetCore.App的引用。

那么接下来就是创建一个服务器。

请看code:

using Microsoft.AspNetCore;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.AspNetCore.Http;
using Microsoft.Extensions.Hosting;
using System;

namespace helloword
{
    class Program
    {
        static void Main(string[] args)
        {
            WebHost.CreateDefaultBuilder().UseKestrel().Configure(app => app.Run(
                 context => context.Response.WriteAsync("hello word!")
                )).Build().Run();
        }
    }
}

那么运行一下:

访问地址:

看一下控制台的内容:

这样就实现了切换至web应用。

总结

下一章介绍源码怎么实现的。

posted @ 2020-05-13 16:34  敖毛毛  阅读(421)  评论(0编辑  收藏  举报