net core Webapi基础工程搭建(二)——创建工程
前言
前面介绍了开发工具及net core版本,后端工程的框架结构开发工具及环境,因为是基础工程,所以没考虑太复杂的框架,如果有架构师请勿喷。
创建工程
废话不多说,撸起袖子干。
打开vs2019,左上角->文件->新建->项目

一般不需要检索,毕竟就几个,找到这个Web 应用程序,点击下一步。

自己起个名字,选个路径,点击创建。

基本上该标注的都标注了,启用HTTPS这个看自己需要,勾选了之后就可以通过https://访问,至于Docker支持这个,先挖个坑,后面鼓捣Docker的时候专门介绍,其实个人感觉跨平台主要得力于Docker这个说是虚拟机也不算,说是服务器也不算的工具。
创建完成后基本上都可以看到这个工程的大概东西了。

工程文件概述(个人理解)
- Properties
这下面有个launchSettings.json,这是个系统配置文件,iis的端口,请求地址,默认地址等等的配置。 - Controllers
你的所有控制器(搞过mvc的不用多说)都在这里,其实说白了就是你的接口API,至于Method,Router都是你自己在每个Api控制器里编辑,具体业务逻辑也是在对应接口实现。 - appsettings.json
这个是配置项文件,net core的web.config,用json来配置个人感觉还是比较舒服的,最起码看着方便,参数什么的也都清楚。 - Program.cs
入口文件,没啥说的,我鼓捣的也不多,说实话做了一个工程这个地方貌似没改动,这个地方可以选择使用哪个Startup(如果你有多个的话)。 - Startup.cs
这个文件就比较厉害了,后续做的Log,Swagger等等第三方类库或者其他有些配置还有你的Service,都需要(有些是最好)在这个文件下注册,先切出代码看下。

- Startup
public Startup(IConfiguration configuration)
{
Configuration = configuration;
}
- ConfigureServices
构造函数这块儿就不多说了,实例化Configuration,这个就是系统整体的Config,AppKey的具体参数是在appsettings.json里配置的(.netframework的AppSettings -,-||)
public void ConfigureServices(IServiceCollection services)
{
services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_2);
}
在Configure前由主机调用执行,services主要用来注册服务以及定义一些系统的配置信息,后续使用Swagger,Quartz等服务都是需要在这个地方注册下。
- Configure
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
// The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
app.UseHsts();
}
app.UseHttpsRedirection();
app.UseMvc();
}
这个Configure个人感觉是在services注册过后,这个地方要告诉管道我要用,所以基本上都是Use,并且在这里可以添加中间层。
运行
简单介绍了下创建的工程内容后,一通Ctrl+F5,不出意外的话你看不到欢迎界面,就只要一个字符串数组,这就是你的ValuesController的GET请求返回的结果,如果需要更改默认启动页面,可以在Properties下面的json文件修改launchUrl。
小结
工程创建完成,下一步就要引入一些第三方的类库来完成一个基础工程常规的使用了。
net core Webapi基础工程搭建(二)——创建工程的更多相关文章
- net core Webapi基础工程搭建(六)——数据库操作_Part 2
目录 前言 开始 使用 小结 前言 昨天是写着写着发现,时间不早了,已经养成了晚上下班抽时间看看能写点儿啥的习惯(貌似),今天实在是不想让昨天没做完的事情影响,所以又坐下,沉下心(周末了),开始把数据 ...
- net core Webapi基础工程搭建(六)——数据库操作_Part 1
目录 前言 SqlSugar Service层 BaseService(基类) 小结 前言 后端开发最常打交道的就是数据库了(静态网站靠边),上一篇net core Webapi基础工程搭建(五)-- ...
- spring原理案例-基本项目搭建 03 创建工程运行测试 spring ioc原理实例示例
下面开始项目的搭建 使用 Java EE - Eclipse 新建一 Dynamic Web Project Target Runtime 选 Apache Tomcat 7.0(不要选 Apache ...
- net core Webapi基础工程搭建(七)——小试AOP及常规测试_Part 2
目录 前言 引入 自定义属性 测试 小结 前言 前一篇讲到了中间层的使用,可能不是那么AOP,今天主要来说下一个轻量级的AOP第三方类库AspectoCore. 简单介绍下这个类库,AspectCor ...
- net core Webapi基础工程搭建(五)——缓存机制
目录 前言 Cache Session Cookie 小结 补充 前言 作为WebApi接口工程,性能效率是必不可少的,每次的访问请求,数据库读取,业务逻辑处理都或多或少耗费时间,偶尔再来个各种花式f ...
- net core Webapi基础工程搭建(四)——日志功能log4net
目录 前言 log4net 依然是,NuGet引用第三方类库 整合LogUtil 小结 前言 一个完整的项目工程离不开日志文件的记录,而记录文件的方法也有很多,可以自己通过Stream去实现文件的读写 ...
- 【Android】cocos2d-x-3.1.1环境搭建与创建工程( Win7 32位系统)
参考资料: http://blog.csdn.net/wxc237786026/article/details/32907079 1.环境搭建 2.创建工程 2.1 VS2012运行 2.2 Andr ...
- Orleans学习总结(二)--创建工程
通过第一篇Orleans学习总结(一)--入门认识我们大致知道知道是干嘛的了,下面我们来动手造一个传说中的神秘的高并发集群Orleans程序. 一.创建四个C#工程 1.IGrain工程,用来定义各种 ...
- 第十九节:Asp.Net Core WebApi基础总结和请求方式
一. 基础总结 1.Restful服务改造 Core下的WebApi默认也是Restful格式服务,即通过请求方式(Get,post,put,delete)来区分请求哪个方法,请求的URL中不需要写方 ...
随机推荐
- Hadoop现在怎么样了?
之前我们提到大数据的时候就会提到Hadoop,Hadoop是大数据的基础框架,是大数据技术的代表.提到HDFS.MapReduce.Yarn,提到HBase.Hive.TEZ等Hadoop生态圈中的一 ...
- 你可能不知道的github的秘密
github也可以使用快捷键 先举例子,如何快速查找项目中的文件? 只需要进入项目,并按下T键 在浏览代码时,如何快速跳到指定行? 只需要进入项目,并按下L键 下面是一些常用的快捷键 聚焦搜索栏 按下 ...
- 【CYH-02】noip2018数论模拟赛:赛后题解
1.小奔的矩阵 2.大奔的方案 3.小奔与不等四边形 4.小奔的方案 当然本次比赛肯定难度不会仅限于此啦!后续还会--
- restTemplate重定向问题 &cookie问题
最近在做一个转发功能,zuul + ribbon + resttemplate 进行路由.负载.转发的功能 基本准备就绪,在微信自动登陆那遇到了一个坑,ribbon 系统用resttemplate 转 ...
- 抽象数据类型与C++
类是一种新的数据类型,类似于数据结构,只是它拥有数据结构所没有的部分——“成员函数”,正是因为它所拥有的成员函数这一特性,使得它能隐藏“数据结构”(类)中的数据,不被用户所知道.通过类中的成员函数,使 ...
- Linux版本划分——基于打包方式
基于Dpkg (Debian系) Debian GNU / Linux是一种强调使用自由软件的发行版.它支持多种硬件平台.Debian及其派生发行版使用deb软件包格式,并使用dpkg及其前端作为包管 ...
- 分布式任务调度平台XXL-JOB学习笔记一
分布式任务调度平台XXL-JOB学习笔记一 XXL-JOB是一个轻量级分布式任务调度平台,其核心设计目标是开发迅速.学习简单.轻量级.易扩展.现已开放源代码并接入多家公司线上产品线,开箱即用.码云地址 ...
- Number() 与 parseInt()解析
在 Python 中,将字符串转为整型变量的函数是 int() ,直接使用 int("123")就可以得到 123的输出结果,这样可以比较快速的得到我们想要的结果,在 js 中将 ...
- 100天搞定机器学习|Day9-12 支持向量机
机器学习100天|Day1数据预处理 100天搞定机器学习|Day2简单线性回归分析 100天搞定机器学习|Day3多元线性回归 100天搞定机器学习|Day4-6 逻辑回归 100天搞定机器学习|D ...
- ArchSummit分享 | 高德地图App架构演化与实践
讲师介绍 郝仁杰,高德地图无线开发专家.在7月13日落幕的2019年ArchSummit峰会上就高德地图近几年的App架构演化和实践进行了分享. 背景概述 高德是国内领先的数字地图内容.导航和位置服务 ...