栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > .Net

.NetCore控制台应用程序

.Net 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

.NetCore控制台应用程序

1、使用Visual Studio创建.NET Core控制台应用程序

这里的话我再创建一个普通的控制台应用程序,与.NetCore控制台应用程序做对比。

两者的对比:

比较两个控制台应用程序的program.cs文件,会发现.netcore控制台应用程序没有引用更多的命名空间。

2、.netcore控制台应用程序——实现猜拳的功能:

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            string[] fistType = new string[] { "石头","布","剪刀"};
            Console.WriteLine("***************************趣味猜拳游戏***************************");
            Console.WriteLine("请输入您的出拳数字(1-石头,2-布,3-剪刀,4-退出)");
            string inputFist = Console.ReadLine();
            while (inputFist!="4")
            {
                //电脑随机生成出拳
                Random random = new Random();
                int computerFist = (int)random.Next(1, 3);//随机数
                try
                {
                    int personFist = Convert.ToInt32(inputFist);
                    //判断数字是否是1-4的数字
                    if (personFist>0&&personFist<5)
                    {
                        //猜拳判断
                        if (personFist 

 效果图:

 3、.netcore控制台应用程序——实现万年历:

using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.WriteLine("*****************************欢迎使用万年历*****************************");
            Console.WriteLine("n请选择年份:");
            int year = int.Parse(Console.ReadLine());
            Console.WriteLine("n请选择月份:");
            int month = int.Parse(Console.ReadLine());
            int days = 0;//存储当月的天数
            Boolean isRn;
            //判断是否为闰年
            if (year%4==0&&!(year%100==0)||year%400==0)
            {
                isRn = true;//闰年
            }
            else
            {
                isRn = false;//平年
            }
            //计算输入的年份之前的天数
            int totalDays = 0;
            for (int i = 1900; i < year; i++)
            {
                //判断闰年或平年,并进行天数累加
                if (i%4==0&&!(i%100==0)||i%400==0)
                {
                    totalDays = totalDays + 366;//闰年为366天
                }
                else
                {
                    totalDays = totalDays + 365;//平年为365天
                }
            }
            //计算输入月份之前的天数
            int beforeDays = 0;
            for (int i = 1; i <=month; i++)
            {
                switch (i)
                {
                    case 1:
                    case 3:
                    case 5:
                    case 7:
                    case 8:
                    case 10:
                    case 12:
                        days = 31;
                        break;
                    case 2:
                        if (isRn)
                        {
                            days = 29;
                        }
                        else
                        {
                            days = 28;
                        }
                        break;
                    default:
                        days = 30;
                        break;
                }
                if (i 

4、ASP.NET Core 概述
ASP.NET Core 是一个跨平台的高性能开源框架,用于生成基于云且连接 Internet 网络的新式应用程序。

使用ASP.NET Core 可以实现以下需求:
(1)创建 Web 应用程序和服务、loT 应用和移动后端。
(2)在 Windows、macOS 和 Linux 上使用喜爱的开发工具。
(3)部署到云或本地。
  (4)在.NET Core 或.NET Framework 上运行。


5、APS.NET Core 的优点
ASP.NET Core 是重新设计的 ASP.NET 4.X,微软重构了整个ASP.NET体系结构,形成了更精简的模块化框架,
它具有以下优点:
(1)Web UI 应用开发和 Web API 应用开发使用统一的编程模型。
(2)支持针对可测试性进行构建。
 (3)Razor Pages 可以使页面的编码方式更简单高效。
(4)支持 Blazor 框架,Blazor 允许在浏览器中使用 C#和 JavaScript。共享全部使用.NET编写的服务器端和客户端应用逻辑。
(5)能够在 Windows、macOS 和 Linux 上进行开发和运行。
(6)支持开放源代码和以社区为中心。
(7)集成新式客户端框架和开发工作流。
(8)支持使用 gRPC 协议远程过程调用。
(9)基于环境的云就绪配置系统。
(10)内置依赖项注入。
(11)支持轻型的高性能模块化 HTTP 请求管道。
(12)能够托管到 Kestrel、IIS、HTTP.sys、Nginx、Apache 和 Docker 等服务器或容器中。
(13)支持并行版本控制。
(14)支持新式 Web 开发工具,如 Visual Studio Code。 

6、创建.net core mvc项目

目录结构如下:

 运行效果图:

ASP.NET Core 应用程序本质上是一个独立的控制台应用程序,它不是必须由 IIS 内部托管运行。

ASP.NET Core应用程序拥有一个内部的自托管(Self-Hosted)的 Web 服务器,由该服务器负责处理外部请求,这个 Web服务器称为 Kestrel Web 服务器,并且.NET Core 支持的所有平台和版本均支持 Kestrel。
ASP.NET Core 应用程序的程序入口在 Program.cs 的文件中,代码如下所示:



从上面代码可知,ASP.NET Core 应用程序的启动主要包含以下三个步骤:
(1)调用 CreateHostBuilder()方法创建 IWebHostBuilder 实例。
(2)  调用 Build()方法,IWebHostBuilder 实例负责创建 |WebHost 实例对象。
(3)调用 Run()方法,启动 1WebHost 实例。
在CreateHostBuilder()方法中,先通过 CreateDefaultBuilder()方法创建 IWebHostBuilder 实例,再
通过 ConfigureWebHostDefaults()方法来使用 Startup 类中所定义的环境、中间件和服务配置。

7、Startup类
ASP.NET Core 为开发者的应用程序提供了处理每个请求的完整控制,而 Startup 类是应用程序的入口(entrypoint),这个类可以设置配置(configuration)并且将应用程序中将要使用的服务连接起来,开发者可以在Startup 类中配置请求管道,该管道将用于处理应用程序的所有请求。

ASP.NET Core 会在主程序集中搜索名为“Startup”的类,开发者也可以指定一个其他程序集用于检索,只需要配置 Hosting:Application配置键。ASP.NET Core 并不关心 Startup 类是否定义为 public,如果它符合命名规范,ASP.NET 将继续加载它,如果有多个 Startup 类,也不会触发异常,ASP.NET将基于命名空间选择其中一个。

注意:
ASP-NET 将基于命名空间选择以匹配项目的框命名空间优先,否则使用第一个按字母排列的命名空间中的类。



 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/983438.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号