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 ...
随机推荐
- 应用火山引擎 DataTester“避坑”,抖音实现用 A/B 实验快速试错
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 A/B 测试产品可以说是企业科学决策的基础"设施",能够帮助企业快速迭代产品. 在字节跳动,每 ...
- Jenkins Pipeline 流水线 - 声明式 Demo
Jenkins Pipeline 流水线 流水线既能作为任务的本身,也能作为 Jenkinsfile 使用流水线可以让我们的任务从UI手动操作,转换为代码化,像dockerfile 一样.从shell ...
- ThreadPoolExecutor 介绍
线程池能够带来3个好处: 降低资源消耗:通过重复利用已创建的线程降低线程创建和销毁造成的消耗:提高响应速度:当任务到达时,任务可以不需要等到线程创建就能立即执行:提高线程的可管理性:线程是稀缺资源,如 ...
- RandomAccessFile 读写文件
将目录下的N个日志文件读写到一个文件中. @Test void verification() throws Exception { File f = new File("D:\\Logs&q ...
- Intellij 查找排除JAR包的依赖关系(Maven Helper)
Intellij 查找排除JAR包的依赖关系(Maven Helper) 安装插件 Windows 类似
- Codeforces Round #618 (Div. 2) A~E
原作者为 RioTian@cnblogs, 本作品采用 CC 4.0 BY 进行许可,转载请注明出处. 1300A. Non-zero 题意:给你一个数组,每次操作你可以使其中任意元素的值+1,问最少 ...
- HDU - 2897 邂逅明下 (简单博弈)
题目链接: https://vjudge.net/problem/HDU-2897 题目大意: 就是现在一堆石子有n颗, 每次只能拿走p~q颗, 当剩余少于p颗的时候必须一次拿完 拿走最后一颗的人败 ...
- 人人都是 Serverless 架构师 | 弹幕应用开发实战
作者 | 寒斜(阿里云云原生中间件前端负责人) 如何使用 Serverless 架构实现全双工通信的应用,Serverless 架构中数据库是如何使用的,本篇文章将为您揭开答案. Serverl ...
- 启动vue项目失败,报错Failed at the node-sass@4.14.1 postinstall script.
https://www.cnblogs.com/xiaodangshan/p/13061618.html
- BTC-协议
BTC-协议 一个去中心化的数字货币要解决两个问题 1.谁有权发行货币 比特币的发行是由挖矿决定的(coinbase transaction 唯一一个产生新币的途径)比特币通过挖矿来决定货币的发行权, ...