.NET Core3.1总体预览和第一个Core程序的创建
小伙伴们大家好!欢迎阅读本贴,这里是常哥说编程的专栏,.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程序的创建的更多相关文章
- 微信小程序(组件demo)以及预览方法:(小程序交流群:604788754)
1. 获取微信小程序的 AppID 登录 https://mp.weixin.qq.com ,就可以在网站的"设置"-"开发者设置"中,查看到微信小程序的 Ap ...
- 根据 Power BI Desktop(预览版)中的报表页创建工具提示
根据 Power BI Desktop 中创建的报表页,可创建直观丰富的报表工具提示,这些提示在你将鼠标悬停在视觉对象上时显示. 通过创建用作工具提示的报表页,使自定义工具提示包含视觉对象.图像以及在 ...
- Visual Studio 2015年预览设置: 辅助安装程序说明
本文介绍了第三方应用程序安装辅助安装的 Visual Studio 2015年预览时安装的说明.如果您安装了多设备开发功能,您需要使用其他第三方软件来处理这些项目.辅助安装程序允许您将部署到您的计算机 ...
- 基于开源方案构建统一的文件在线预览与office协同编辑平台的架构与实现历程
大家好,又见面了. 在构建业务系统的时候,经常会涉及到对附件的支持,继而又会引申出对附件在线预览.在线编辑.多人协同编辑等种种能力的诉求. 对于人力不是特别充裕.或者项目投入预期规划不是特别大的公司或 ...
- html5 前端图片处理(预览、压缩、缩放)
现在手机图片是越来越大了,上传图片流量耗费巨大.同时预览也是一个问题,所以利用HTML5 file和canvas来解决这个问题. var upload = { _o: null,//对象id _aut ...
- BookBlock - 效果非常真实的书本翻页预览
这个名为 BookBlock 的图片预览效果是一个书展示或网上书店的概念,已全屏打开3D页面导航网格的形式显示图书的详细信息.我们可以打开书预览的摘录,其中有一些细节的网格.对于图书预览,我们在使用 ...
- 玩转Android Camera开发(二):使用TextureView和SurfaceTexture预览Camera 基础拍照demo
Google自Android4.0出了TextureView,为什么推出呢?就是为了弥补Surfaceview的不足,另外一方面也是为了平衡GlSurfaceView,当然这是本人揣度的.关于Text ...
- 【译】Visual Studio 15 预览版更新说明
序:恰逢Build2016大会召开,微软发布了VS2015的update2更新包和VS2016预览版.本人正在提升英文水平中,于是在这里对VS2016预览版的官方文档进行了部分翻译.因为VS有些功能使 ...
- HTML5图片拖拽预览原理及实现
一.前言 这两天恰好有一位同事问我怎样做一个图片预览功能.作为现代人的我们首先想到的当然是HTML5啦,其实HTML5做图片预览已经是一个老生常谈的问题了.我在这里就简单说说其中相关的一些东西,当然会 ...
随机推荐
- 项目脚手架 - 《Spring Boot + MyBatis + MyBatis Generator》
前言 最近启动了一个新的项目发现,每当一个新项目的启动往往需要从头搭建一个"框架",其中虽然很多基础代码可以Copy,但也会浪费不少时间. 基于这个情况,我打算在GitHub上创建 ...
- OpenCV-Python 读取显示视频 | 六
目标 学习读取视频,显示视频和保存视频. 学习从相机捕捉并显示它. 你将学习以下功能:cv.VideoCapture(),cv.VideoWriter() 从相机中读取视频 通常情况下,我们必须用摄像 ...
- [vijos]1083小白逛公园<线段树>
描述 小新经常陪小白去公园玩,也就是所谓的遛狗啦…在小新家附近有一条“公园路”,路的一边从南到北依次排着n个公园,小白早就看花了眼,自己也不清楚该去哪些公园玩了. 一开始,小白就根据公园的风景给每个公 ...
- thinkphp5.1中使用链式操作的坑
1.在进行tp5->tp5.1的时候,没有想太多,直接使用之前的代码:结果在该操作中,多次调用该get方法,tp5.1的链式操作一直保持了之前的搜索条件,截图如下:(具体的代码没有展示) 2.然 ...
- MATLAB 大数相乘溢出显示
解一道面试题——华为社招现场面试1:请使用代码计算1234567891011121314151617181920*2019181716151413121110987654321 . 乘积是逐位相乘,也 ...
- CSS样式的4种写法 | 以及选择器的几种用法
CSS样式: 1.内部样式表 <style type="text/css"> 样式表写法 </style> 2.使用link标签,在文档中声明使用 ...
- Boxes Packing
Boxes Packing Mishka has got n empty boxes. For every i (1 ≤ i ≤ n), i-th box is a cube with side le ...
- 3.26java作业
1.编写程序, 输入变量x的值,如果是1,输出x=1,如果是5,输出x=5,如果是 10,输出 x=10,除了以上几个值,都输出x=none.(知识点:if条件语句) package fda; imp ...
- CAS / ABA
CAS / ABA 标签(空格分隔): 操作系统 1. CAS 解决 Volatile 不保证原子性的问题 /** * Atomically increments by one the current ...
- jenkins登录信息无效,忘记密码
1.使用admin账号登陆jenkins,提示登录信息无效,请重试 原因:启动了多个jenkins服务或者所开的Jenkins服务不对 2.jenkins账号密码忘记 修改C:\Users\ASUS- ...