NetCore高级系列文章01---创建项目及配置文件
.NET Core是适用于 Windows、Linux 和 macOS 的免费、开源托管的计算机软件框架,作为.NET开发人员,全面拥抱.NetCore将成为趋势。
本系列文章将分为两大部分讲解.NetCoreMvc:
第一部分主要讲.netCore的一些基础知识,包括配置文件、服务注册发现、中间件、依赖注入、路由、安全认证等功能,因为.netCore是开源的,会适当的对各知识点进行源码跟踪解析。
第二部分将进行项目实践 主要用的技术为.NetCoreMvc + EFCore+Sqlserver做一个通用的权限管理系统
开始第一部分的讲解吧
1、创建.NetCore Mvc项目
我用的VS2019支持.netCore SDK 3.1,新建项目选择asp .netCore Web应用


点击创建后会自动生成好mvc骨架

有过.net foramwork MVC 开发验证的同学是不是对这个项目结构很熟悉
相同的是:Conrollers文件夹写控制器的、Models 放视图级的类、Views视图文件夹 这也就是我们常说的 M - V - C
不同的是:里面多了wwwroot目录,用户存放静态文件的如CSS JS image文件、appsetting.json文件替换了我们之前web.config文件、Program.cs是我们项目启动的入口类、Startup.cs是项目启动的配置类,在里面可以配置服务、中间件等。
2、配置文件详解
在 .net core中,配置文件的读取是通过IConfiguration来提供的,程序集是Microsoft.Extensions.Configuration,对应的有一系列的实现,通过这些实现,可以读取Json/Xml/ini/memory/command/env等类型的数据源。
1) appsettings.json文件作为默认的配置文件名,首先看看如何去读取配置文件中的值
配置好键值“Name”:"Hello world"对如下:

在控制器中读取配置,通过构造函数注入配置服务,关于服务的注册我们后面再讲

我们在实际项目开发中,有时会将配置映射成一个类,如配置文件中的MyClass键,需要在代码中对应建这个类

读取这个配置,并映射成类的方法如下:

除此之外配置文件还有如下的特点
2)新一代的配置系统还可以通过环境变量来加载不同的配置文件
3)实现配置的热加载
NetCore高级系列文章01---创建项目及配置文件的更多相关文章
- Learn-JavaScript-with-MDN 系列文章: 01. var & let & const 对比
Learn-JavaScript-with-MDN 系列文章: 01. var & let & const 对比 var & let & const 区别 https: ...
- 七天接手react项目 系列 —— react 脚手架创建项目
其他章节请看: 七天接手react项目 系列 react 脚手架创建项目 前面我们一直通过 script 的方式学习 react 基础知识,而真实项目通常是基于脚手架进行开发. 本篇首先通过 reac ...
- Webpack指南(一):安装,创建项目,配置文件,开发环境以及问题汇总
Webpack是一个现代 JavaScript 应用程序的静态模块打包器(module bundler).当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency gra ...
- koa2学习笔记01 - 创建项目 —— koa生成器一键生成koa项目
前言 从17年开始尝试学习搭建个人网站开始,就开始学习摸索node了,至今差不多快两年了. 说起来现在都9102年了,所以最近打算整体设计重构一下网站,索性node后台也重写一遍. 重温一下node, ...
- ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 01. 创建项目 +项目结构和配置简介
新建项目:Tutotial.Web 解决方案名称可以把web去掉 视频里面把git这个选项勾选了.我就不勾选了 dotnet CLI创建项目 首先必须安装好了.net Core的SDK dotnet ...
- django入门 01 创建项目
安装django库 pip install django 创建--by 终端 django-admin startproject myproject 通过命令创建的django项目,默认不含templ ...
- Unity3D实践系列01,创建项目
下载并安装Unity5软件客户端. 打开软件,注册Unity帐号,并用注册帐号登录. 点击"创建Project"按钮. 把项目命名为"My First Unity Pro ...
- Flutter新版本2.X系列--01创建项目
1.新建项目,打开Android studio,点击红圈部分 2.选择第一个 3.设置你的项目名称,flutter sdk位置,以及项目存储路径 4.设置包名,这个要唯一 5.好啦 ~ 作为一名前端开 ...
- Android系列一、创建项目
本文是在MAC下的Android Studio操作的. 一.Android入门 1.打开Android Studio,界面如下: 几个选项的意思: 创建一个新的项目 打开一个已经存在的项目 从版本管理 ...
- SpringBoot系列之快速创建项目教程
本博客简介一下SpringBoot快速创建工程的方法,主要介绍一下Spring Initializer,Spring Initializer是IntelliJ IDEA才集成的一种快速创建Spring ...
随机推荐
- websever
1 在浏览器键入url,按下回车会经历如下行为 浏览器向 DNS 服务器请求解析该 URL 中的域名所对应的 IP 地址; 解析出 IP 地址后,根据该 IP 地址和默认端口 80,和服务器建立 TC ...
- 【计算机网络】soap和rest简单比较整理
https://www.bilibili.com/video/BV1ht411U7fC/?spm_id_from=333.337.search-card.all.click&vd_source ...
- OS | 读者写者问题(读者优先,写者优先 ,读写公平)
读者优先 读者优先的解决方案: 互斥信号量 wrt,初值是 \(1\),代表一个共享文件,解决 "读-写"互斥,"写-写"互斥. 一个记数器,即整型变量 rea ...
- JSP 学习笔记 | 一、JSP 原理理解
前文:IDEA | 使用Maven创建Web项目并配置Tomcat JSP(全称:Java Server Pages):Java 服务端页面.是一种动态的网页技术,其中既可以定义 HTML.JS.CS ...
- vue实现word或pdf文档导出的功能
https://www.jianshu.com/p/73915ef6ac89 Vue - element-ui 中预览 word .exce.ppt以及pdf文件 https://blog.csdn. ...
- P1765
和那道题一样,这次用的getchar,结果对了可是洛谷评测WA了,换成scanf单个字符,结果还是WA了,换成直接getline读入整个字符串就对了. 可见读入单个字符的方式有可能出现各种小错,尤其是 ...
- off-policy RL | Advantage-Weighted Regression (AWR):组合先前策略得到新 base policy
论文题目:Advantage-Weighted Regression: Simple and Scalable Off-Policy Reinforcement Learning,ICLR 2020 ...
- spring启动流程 (6完结) springmvc启动流程
SpringMVC的启动入口在SpringServletContainerInitializer类,它是ServletContainerInitializer实现类(Servlet3.0新特性).在实 ...
- R语言—数据基础及练习
## 创建leadership数据框 manager <- c(1,2,3,4,5) date <-c("10/24/08","10/28/08", ...
- apicloud(沉浸式导航篇) - 手机状态栏 有黑边的解决办法
在 index.html 的 apiready 中加上 第一种 : 可设置全屏 api.setFullScreen({ fullScreen: true }); 第二种:设置状 ...