Table of Contents

Ater.Web 是什么

Ater.Web.template是一个开箱即用的解决方案模板,基于ASP.NET CoreEntity 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的图形界面选择创建。

选择模板

模板提供了两个类型,分别对应atapiatlight,后者更轻量,更适用于简单的单体应用,以下是它们之间的一些区别:

类型 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模板提供开箱即用支持!

下一步

🎉恭喜你已经成功完成了项目的创建,来了解一下项目结构吧!