Ater.Web 是什么
Ater.Web.template
是一个开箱即用的解决方案模板,基于ASP.NET Core
、Entity Framework
和.NET Aspire
等相关技术,结合大量项目实践,帮助新老开发者快速开发应用服务。
特性
- 基于官方相关技术,它不是
另一个框架
,通用性极强。 - 模板即包含所有源代码,没有任何
框架依赖包
,保持透明和专注。 - 以开发和维护效率为目的,提供分层项目结构和代码实践规范,适用于单体应用、微服务、多人协作等各种场景。
- 提供配套的智能代码助手工具,尽可能减少重复性工作。
总结:简单、通用、实用!
它可以帮你做什么
- 快速搭建可运行的项目,并提供常见的配置和依赖注入。
- 提供经过实事上的分层方式,帮助您更好的组织您的代码,同时实现关注点分离,提高开发和维护的效率。
- 学习和建立通用的知识体系,而不是学习和使用特殊的用法。
- DRY(don't repeat yourself),利用智能代码助手为您生成代码,以节省时间。
- 帮助团队成员快速入手项目,即使是新手,也可以快速进行业务实现。
以下情况可能不适用
- 模板不提供无需开发即可获取的功能集成,如:支付、CMS、身份验证等功能。你需要选择其他方案并集成。
- 我们很多代码实现和生成都基于
Entity Framework
,如果你不使用它,将无法享受到相应的便捷性。 - 不适用于使用
minimalAPI
风格进行接口开发。 - 新模板基于
.NET8.0
构建,旧版本并不适用。
备注
使用该套模板和开发工具,您的开发工作将变得简单有序,通过一个业务实现你只需要:
- 定义实体模型
- 通过工具生成模板代码(如DTO、基础的CURD、接口)。
- 根据实际业务调整并实现自己的业务逻辑。
- 定义公开的接口
安装
前提
使用dotnet new
命令安装。
dotnet new install ater.web.templates
使用
安装完成后,可使用命令创建项目,也可通过VS的图形界面选择创建。
选择模板
模板提供了两个类型,分别对应atapi
和atlight
,后者更轻量,更适用于简单的单体应用,以下是它们之间的一些区别:
类型 | atapi | atlight |
---|---|---|
项目分层 | 多项目分层 | 简单三层 |
模块 | 系统模块及其他可选 | 不包含 |
初始化任务 | 包含 | 无 |
OpenTelemetry | 包含 | 无 |
密码策略 | 包含 | 无 |
Swagger分组 | client与admin | 仅包含client |
邮件服务 | 有 | 无 |
创建项目
dotnet new atapi -n my-project
转到Http.API
项目中,在appsetings.json
中配置数据库连接字符串。
提示
模板默认使用PostgreSQL
,请根据自己实际需求进行变更。
安装ater.dry (推荐)
ater.dry
是一个智能代码辅助工具,主要提供代码生成功能,它可以分析您的实体,智能的帮助您生成相关的数据传输对象、数据库读写操作以及API接口。它以dotnet
命令行工具提供,同时提供Web UI操作界面,能够节省大量的开发时间,强烈建议安装使用!
dotnet tool install --global ater.dry
提示
该工具为Ater.Web
模板提供开箱即用支持!
下一步
🎉恭喜你已经成功完成了项目的创建,来了解一下项目结构吧!