[03]使用 VS2019 创建 ASP.NET Core Web 程序
使用 VS2019 创建 ASP.NET Core Web 程序
本文作者:梁桐铭- 微软最有价值专家(Microsoft MVP)
文章会随着版本进行更新,关注我获取最新版本
本文出自《从零开始学 ASP.NET Core 与 EntityFramework Core》目录
视频课程效果更佳:跨平台开发实战掌握 ASP.NET Core 与 EntityFramework Core
创建 ASP.NET Core Web 应用程序
如果您使用的是 VS2017 请看 VS2017 创建 ASP.NET Core Web 程序(三)
在这个视频中我们将讨论
- 可用的不同项目模板及其功能
- 预制的项目模板有什么不同,哪些是可以使用的,以及他们的作用。
在 Visual Studio 2019 中创建新的 ASP.NET Core 项目
步骤 1:在 Visual Studio 2019 中创建新的 asp.net Core 项目
步骤 2:在 Visual Studio 中单击**“创建新项目”**。
第 3 步:在“创建”对话框中,右侧菜单栏“语言”下选择“C#”,然后点击**“ASP.NET Core Web 应用程序”**

第 4 步:在配置新项目菜单栏中,键入项目的名称。我将其命名为StudentManagement。 我们将创建一个 asp.net core web 应用程序,在这个程序中,我们将创建、读取、更新、删除学生。
第 5 步:另外,指定要创建此项目的位置。我将把我的项目放在,路径为,C:\Projects\source\repos 文件夹中。
第 6 步:点击创建按钮。

此处的步骤和 VS 2017 不太相同。
第 7 步: 在下一个屏幕上,选择 ASP.NET Core 2.2(此录制时可用的最新.NET Core SDK) 
第 8 步:取消选中“为 HTTPS 配置”复选框 ,如上图所示,关闭身份验证。
此屏幕显示可用于创建 ASP.NET Core 应用程序的不同项目模板。
各个模板简单说明
空:名称暗示的“空”模板不包含任何内容。这是我们将使用的模板,并从头开始手动设置所有内容,以便我们清楚地了解不同部分如何组合在一起。
Web 应用程序(模型视图控制器):此模板包含创建 Model,视图(Views)和控制器文件夹并添加 Web 特定的内容,如 CSS,JavaScript 文件,布局文件和网站所需的其他资源,也可以基于此模板创建 Restful 风格的 HTTP 服务。
下面的屏幕截图显示了我使用Web应用程序(模型视图控制器)创建的项目。请注意,我们有Modes,Views 和 Controllers 文件夹。在 Views 文件夹中,我们有示例视图文件和布局文件,它们代表 Web 应用程序的用户界面。我们还有 Web 应用程序通常需要的 JavaScript 和 CSS 文件。

API:此模板包含创建 ASP.NET Core RESTful HTTP 服务所需的一切
AP I 不需要所有网站特定的内容,如 JavaScript 文件,CSS 文件,视图文件,布局文件,因为它没有用户界面。Web API 公开的数据通常由其他应用程序使用,可以简单的理解为 程序和程序之间打交道。
因此,API 模板只会创建Controllers文件夹。它不会创建 Models 和 Views文件夹,因为它们不是 API 所必需的。下面的屏幕截图显示了我使用 API 模板创建的项目。请注意,我们只有Controllers文件夹。我们没有 RESTful API 不需要的所有 JavaScript,CSS 和布局文件。

Web 应用程序:此模板使用新的用于构建 Web 应用程序的 RazorPages 框架。使用 Razor 页面,编写以页面为中心的场景更容易,更高效。当我们不想要 ASP.NET MVC 的完整复杂性时,我们通常使用这种方法。我们可以将其视为 MVC 框架的更薄版本。我们将在即将发布的视频中详细讨论 RazorPages。
Razor 类库(RCL):顾名思义,我们使用此模板创建可复用的 Razor 类库项目。该项目包含所有可复用的用户界面部分,如数据模型,页面模型,控制器,页面,Razor 视图和 View 组件。然后,可以在多个应用程序中复用此 Razor 类库(RCL)项目。任何使用 RCL 的应用程序都可以覆盖它包含的视图和页面。我们将在后面发布的视频中讨论 RCL。
Angular,React.js,React.js 和 Redux:这三个模板允许我们与 Angular,React 或 React 和 Redux 一起创建 asp.net Core Web 应用程序。
在下一篇文章中,我们将探索和理解 ASP.NET Core 项目文件。
摘要
在本文中,我尝试解释如何使用从头开始的创建项目,以及不同类型的模板的区别。我希望这篇文章可以帮助您满足您的需求。我想收到你的反馈意见。请发布您对本文的反馈,问题或意见。
文章说明
如果您觉得我的文章质量还不错,欢迎打赏,也可以订阅我的视频哦
未得到授权不得擅自转载本文内容,52abp.com 保留版权
感谢您对我的支持
[03]使用 VS2019 创建 ASP.NET Core Web 程序的更多相关文章
- [03-2]VS2017 创建 ASP.NET Core Web 程序
VS2017 创建 ASP.NET Core Web 程序 本文作者:梁桐铭- 微软最有价值专家(Microsoft MVP) 文章会随着版本进行更新,关注我获取最新版本 本文出自<从零开始学 ...
- 在Mac下创建ASP.NET Core Web API
在Mac下创建ASP.NET Core Web API 这系列文章是参考了.NET Core文档和源码,可能有人要问,直接看官方的英文文档不就可以了吗,为什么还要写这些文章呢? 原因如下: 官方文档涉 ...
- asp.net core-1.在控制台创建ASP.NET Core应用程序
创建asp.net core应用程序,需要先把环境安装好,我这边选的是vs2017 第一步先执行dotnet 我执行dotnet --help可以把所有的命令全部列出来: 红框内就是我们可以用来初始化 ...
- asp.net core-2.在vs2017中创建asp.net core应用程序
今天我们用vs2017创建一个asp.net core 的应用程序,打开vs2017 点击:文件—>项目,选择asp.net core web 应用程序 点击确定 红框内就昨天用控制台去创建的应 ...
- ASP.NET Core Web程序托管到Windows 服务
前言 在 .NET Core 3.1和WorkerServices构建Windows服务 我们也看到了,如何将workerservices构建成服务,那么本篇文章我们再来看看如何将web应用程序托管到 ...
- Azure 部署 Asp.NET Core Web App
在云计算大行其道的时代,当你在部署一个网站时,第一选择肯定是各式各样的云端服务.那么究竟使用什么样的云端服务才能够以最快捷的方式部署一个 ASP.NET Core 的网站呢?Azure 的 Web A ...
- ASP.NET Core 实战:使用 ASP.NET Core Web API 和 Vue.js 搭建前后端分离项目
一.前言 这几年前端的发展速度就像坐上了火箭,各种的框架一个接一个的出现,需要学习的东西越来越多,分工也越来越细,作为一个 .NET Web 程序猿,多了解了解行业的发展,让自己扩展出新的技能树,对自 ...
- [译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了
[译]ASP.NET Core Web API 中使用Oracle数据库和Dapper看这篇就够了 本文首发自:博客园 文章地址: https://www.cnblogs.com/yilezhu/p/ ...
- 使用docker部署Asp.net core web应用程序
拉取aspnetcore最新docker镜像 aspnetcore的docker镜像在docker官网是有的,是由微软提供的.它的依赖镜像是microsoft/dotnet.通过访问网址:https: ...
随机推荐
- 关于AttributeError: 'NoneType' object has no attribute 'send_keys'
在学web自动化测试时,通过PO模型将特定页面的一些元素及元素操作放在特定页面模块中, 然后提取公共的部分, 如元素等待WebDriverWait, 元素操作send_keys, click, 获取元 ...
- JQuery解决鼠标单双击冲突问题
转自链接:https://www.shuzhiduo.com/A/xl560MKrzr/ 在jQuery的事件绑定中,如果元素同时绑定了单击事件(click)和双击事件(dblclick),那么执行单 ...
- Python备份脚本(Win10+Python2.7+PyCharm)
说一下程序来源,是从<Python简明教程>上面看到的程序,试了一下之后,居!然!不!行!!! Google了老半天,也看了好多个博客,也未能解决. 除了一些基本语法问题.字符串中队'\' ...
- 01-Nginx安装
一.安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel 二.首先安装PCRE PC ...
- C# OpenCVSharp使用SetMouseCallback设置回调方法,报错"向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用它们。"
一.描述问题 当非托管代码调用托管应用程序的委托的时候,经常会报错“托管调试助手 "CallbackOnCollectedDelegate" Message=托管调试助手 &q ...
- GO-结构体(类似python中的类)
一.结构体有名属性 package main import "fmt" func main(){ type Sb struct { name string //属性名,数据类型 a ...
- golang-错误处理
1.错误处理 如果要写出健壮 ,易维护的代码 ,错误处理就是关键 ,考虑到可能会发生的意外对其进行处理 go的错误处理与众不同 ,在调用可能出现问题的方法和函数时都会返回一个类型为error的值 ,由 ...
- JS中的slice()和splice()的区别以及记忆方式
总结 splice()会改变原来的数组,返回的是被改变的内容,比如说通过splice删掉了某一项,那么返回的是删掉的这一项,当然还是会以数组的形式返回. slice不会对原数组进行改变,会返回一个新的 ...
- SQL Server 通过游标重新定义单据数据的单据编号
DECLARE @Index INTSET @Index=100DECLARE UpdateCursor CURSOR FOR (SELECT DISTINCT AA.Id FROM dbo.表 ...
- MySQL数据库:注释及数据类型
注释 /* 多行注释 */ # 单行注释 -- 单行注释(注意:两个但横线后面必须加空格) 数据类型 1.整形 tinyint.smallint.mediumint.int.bigint 小整 ...