ASP.NET CORE
项目搭建(2022 年 3 月版)
自读
沉淀了多年的技术积累,在 .NET FRAMEWORK
的框架下尝试造过自己的轮子。
- 摸索着闭门造过 基于
OWIN
服务后端。 - 摸索着闭门造过
ORM
库。 - 摸索着闭门造过 代码生成器。
- 摸索着闭门造过 授权服务。
- 摸索着闭门造过 通用权限模块。
- 摸索着闭门造过 通用请求处理模块。
- 摸索着闭门造过 模块化。
- 摸索着闭门造过 消息队列。
- 摸索着闭门造过 工具库。
做过的事情不少,但都是基于个人的理解,搜罗参考资料,一步步去做。过程是辛苦的,效果是实现的,开发效率也是提升的。
只是,始终是一个人,比较寂寞。
一直很想把自己的理解进行整理,记录和共享出来,希望能够与大家交流、学习、接收指导,由于工作时间和项目进度问题,成为了一个未能达成的心愿。
也是由于微软的改动,出现了 .NET CORE
, 致使曾经造过的轮子需要重新进行安排。
.NET CORE
的出现,带来了更多未来和可能性,是要积极拥抱的。
因此,借机记录下摸索 .NET CORE
的点滴,希望可以坚持下去。
当下的环境
- 时间:2022 年 3 月
.NET
版本:.NET 4.6
建立空项目 - LightXun.Core.Api
Dependencies(依赖项)
- 项目中所有的服务依赖、框架,都会被安装在该文件夹下。
- 现有的
Microsoft.NetCore.App
是.NET CORE
基础框架, 包含了对代码、编译、运行、部署的处理。 - 现有的
Microsoft.AspNetCore.App
是基于基础框架引入的应用层框架, 包含了一系列应用层服务, 例如 认证服务、授权服务、诊断服务、HTTP
请求处理服务、文件访问、日志记录、依赖注入等。
依赖管理(NuGet)
- C# 用来管理插件的工具, 用于项目构建和依赖解析的工具。
appsettings.json
- 用于配置项目的运行时信息。
- 用于日志配置、托管服务器配置、数据库连接配置、第三方信息、账号密码、token 等。
Properties
- 用于配置项目的启动信息。
- profiles: 配置服务器、端口信息等。
Program.cs
- 程序入口,创建虚拟托管服务器。
- 检查程序运行环境。
- 加载程序集,运行系统所有核心代码。
- 设置环境变量和日志,以及系统的反转控制 IOC 容器。
Startup.cs
- 集中管理了系统的依赖注入、中间件、请求通道。
- 在
ConfigureServices
中,管理组件依赖, 其中注入各种服务组件的依赖, 将自己的服务注入到 IOC 容器中。 - 在
Configure
中,用来配置http
请求通道, 创建中间件Middleware
, 设置请求通道。
宿主
IIS Express
寄宿于IIS
,只运行在Windows
中。. NET CORE
内建服务器,寄宿于KESTREL
服务器,可实现跨平台。