小伙伴们大家好!欢迎阅读本贴,这里是常哥说编程的专栏,.NetCore已经出来一段时间了,很多小伙伴可能也开始了学习,但是.NetCore毕竟在学习上和我们常用的.NET Framework还是有很大差别的,为了帮助大家能尽快的进入.NetCore的开发,常哥把在喜科堂讲解的关于Core的内容都做了新的整理,并作为一个系列分享给大家,和大家一起学习进步!作为系列课第一篇,我还是要考虑到没有基础的小伙伴,所以,先简单做一点关于.NetCore的介绍。

一、.NET Core的设计

.NET Core一出来就是专门定位到跨平台的开发,因为之前的.NET Framework主要运行在windows上面,其他操作系统的部署非常困难,而使得.NET程序的受欢迎度在很大程度上受到影响。近两年微软终于不负众望,把非常优秀的.NET Core平台推出了,让.NET开发者受到很大的鼓舞。

我们先看一下.NET Core的跨平台架构设计,如下图所示:

通过上图,我们可以看到,.NET Core的运行时可以在不同的操作系统上跑起来,那也就意味着,我们在windows上面写的程序,编译后,都能被不同操作系统的运行时解码。而且中间部分我们看到有一个StandardLibrary的一个标准库,这也就是说,如果我们创建类库的时候,选择这个类型在对应的.NET Core和.NET Framework版本中都能运行,这就极大的方便了我们在.NET Core和.NET Framework之间实现程序的迁移。

其次,很快微软会将.NET框架中Framework和Core都统一成.NET5,到时候,我们的开发会更加方便,不过现在大家不用着急,.NET5会无缝集成.NET Core3.1,所以,现在我们学习.NET Core3.1是最好的机会。

二、.NET Core3.1程序创建和结构分析

为了给大家更好的分析.NET Core的组成,我们首先创建一个空的ASP.NET Core3.1的程序来体验一下。有的小伙伴可能会问,为什么要创建空的项目呢?因为空的项目没有任何多余的内容,我们可以从最基础的结构给大家分析,需要什么内容,我们自己添加进来,这样会更加清楚,如果我们创建的项目自动生成很多内容,那么你可能就不知道哪些东西是必须的,哪些东西是可有可无的。这种学习方法是常哥多年坚持的。

1、 创建ASP.NET Core空web项目

其他选项都是默认的,创建后,项目结构如下:

2、 项目结构文件分析,请小伙伴们记住即可

launchSettings.json  这个是启动配置的json文件(随后就讲)

appsettings.json 应用程序配置文件(这个后面项目部署的时候会用到,都是json格式)

Program.cs 控制台程序入口文件,这个是我们即将重点研究的。

Startup.cs  配置启动项目的服务注入、请求管道的配置类。这个也是我们要重点分析的。

3、 关于launchSettings.json 启动配置的使用

我们打开launchSettings.json文件,观察到下面红色部分是我们经常要用到的端口号:

这些内容,我们在部署的时候,都可以修改。同时,我们在VS的启动中,有时候为了观察端口,我们也会设置这个输出,小伙伴可以参考下图设置一下:

比如,我们选择了红色框中的项目名称,下次启动调试的时候,会同时输出控制台的信息,效果如下:

好了小伙伴,可以按照我说的自己测试一下,下一篇,我们给大家分享AspNetCore非常重要的启动原理、源码相关内容。如有任何问题,欢迎在评论区留言,常哥看到后,会给大家第一时间回复。您也可以通过微信公众号和我们沟通。另外,本系列我也录制了视频,都可以给大家分享。常哥感谢大家的支持。

欢迎关注公众号↓

.NET Core3.1总体预览和第一个Core程序的创建的更多相关文章

  1. 微信小程序(组件demo)以及预览方法:(小程序交流群:604788754)

    1. 获取微信小程序的 AppID 登录 https://mp.weixin.qq.com ,就可以在网站的"设置"-"开发者设置"中,查看到微信小程序的 Ap ...

  2. 根据 Power BI Desktop(预览版)中的报表页创建工具提示

    根据 Power BI Desktop 中创建的报表页,可创建直观丰富的报表工具提示,这些提示在你将鼠标悬停在视觉对象上时显示. 通过创建用作工具提示的报表页,使自定义工具提示包含视觉对象.图像以及在 ...

  3. Visual Studio 2015年预览设置: 辅助安装程序说明

    本文介绍了第三方应用程序安装辅助安装的 Visual Studio 2015年预览时安装的说明.如果您安装了多设备开发功能,您需要使用其他第三方软件来处理这些项目.辅助安装程序允许您将部署到您的计算机 ...

  4. 基于开源方案构建统一的文件在线预览与office协同编辑平台的架构与实现历程

    大家好,又见面了. 在构建业务系统的时候,经常会涉及到对附件的支持,继而又会引申出对附件在线预览.在线编辑.多人协同编辑等种种能力的诉求. 对于人力不是特别充裕.或者项目投入预期规划不是特别大的公司或 ...

  5. html5 前端图片处理(预览、压缩、缩放)

    现在手机图片是越来越大了,上传图片流量耗费巨大.同时预览也是一个问题,所以利用HTML5 file和canvas来解决这个问题. var upload = { _o: null,//对象id _aut ...

  6. BookBlock - 效果非常真实的书本翻页预览

    这个名为 BookBlock 的图片预览效果是一个书展示或网上书店的概念,已全屏打开3D页面导航网格的形式显示图书的详细信息.我们可以打开书预览的摘录,其中有一些细节的网格.对于图书预览,我们在使用 ...

  7. 玩转Android Camera开发(二):使用TextureView和SurfaceTexture预览Camera 基础拍照demo

    Google自Android4.0出了TextureView,为什么推出呢?就是为了弥补Surfaceview的不足,另外一方面也是为了平衡GlSurfaceView,当然这是本人揣度的.关于Text ...

  8. 【译】Visual Studio 15 预览版更新说明

    序:恰逢Build2016大会召开,微软发布了VS2015的update2更新包和VS2016预览版.本人正在提升英文水平中,于是在这里对VS2016预览版的官方文档进行了部分翻译.因为VS有些功能使 ...

  9. HTML5图片拖拽预览原理及实现

    一.前言 这两天恰好有一位同事问我怎样做一个图片预览功能.作为现代人的我们首先想到的当然是HTML5啦,其实HTML5做图片预览已经是一个老生常谈的问题了.我在这里就简单说说其中相关的一些东西,当然会 ...

随机推荐

  1. python课程体系是怎么样的?

    好的python课程体系是怎么样的?Python从1991年走到今天,已经有了28年的历史了,在开发行业来说也是老江湖了,那么python为什么可以在开发行业屹立不倒呢?其实python最吸引程序员的 ...

  2. 使用Python+OpenCV进行图像处理(三)| 视觉入门

    检测是计算机视觉任务中的主要任务之一,而且应用很广泛.检测技术可以帮助人类检测那些容易被肉眼忽略的错误:也可以"帮助"自动驾驶汽车感知空间信息.无疑自动化的检测技术的广泛应用将为我 ...

  3. PHP7内核(五):系统分析生命周期

    上篇文章讲述了模块初始化阶段之前的准备工作,本篇我来详细介绍PHP生命周期的五个阶段. 一.模块初始化阶段 我们先来看一下该阶段的每个函数的作用. 1.1.sapi_initialize_reques ...

  4. CSS3动画的使用以及优化

    CSS3 动画 目录 1. 定义动画2. animation 属性3. animation 属性的兼容4. animation与transition 属性的取别5. animate.css 动画库6. ...

  5. iOS 应用签名

    一.密码学简介 1.1 base64 Base64 是一种通过查表的编码方法,不能用于加密,即使使用自定义的编码表也不行. Base64 适用于小段内容的编码,比如数字证书签名.Cookie 的内容等 ...

  6. 以个人身份加入.NET基金会

    .NET 走向开源,MIT许可协议. 微软为了推动.NET开源社区的发展,2014年联合社区成立了.NET基金会. 一年前 .NET 基金会完成第一次全面改选,2014年 .NET基金会的创始成员中有 ...

  7. Ubuntu查看文件格式(后缀名)

    在文件目录执行: $ file filename #filename表示要查看的文件名

  8. Python Tkinter Grid布局管理器详解

    Grid(网格)布局管理器会将控件放置到一个二维的表格里.主控件被分割成一系列的行和列,表格中的每个单元(cell)都可以放置一个控件. 注意:不要试图在一个主窗口中混合使用pack和grid (1) ...

  9. Hadoop调试记录(1)

    错误 ERROR: Can't get master address from ZooKeeper; znode data == null 解决 关闭hadoop,发现stop-all.sh后几个进程 ...

  10. 纯html加css的键盘UI效果图

    先上效果图: 没有打字的功能,纯属是个界面图(一时无聊写的) 代码如下: <!DOCTYPE html> <html> <head> <meta charse ...