Smart.WebAPI.Template
4.0.1
dotnet new install Smart.WebAPI.Template::4.0.1
This package contains a .NET Template Package you can call from the shell/command line.
Smart.WebAPI.Template
基于ASP.NET Core 8/9平台的WebAPI快速开发框架,集成服务自动注册、模块化认证、生产级日志等企业级特性。
核心特性
基础架构
- 跨平台支持:兼容Windows/Linux/macOS
- 服务自动注册:基于
Smart.Inject
的自动依赖注入 - 高性能日志:NLog组件支持异步日志和结构化日志
- 编码扩展:内置GBK/GB2312中文编码支持
预置模块
模块 | 功能描述 |
---|---|
AddAuthService |
JWT身份认证与权限管理 |
AddSwaggerAuthorize |
带OAuth2授权的Swagger文档 |
AddCorsPolicy |
可配置的跨域策略 |
AutonomicMigration |
EF Core自动数据库迁移 |
快速开始
环境要求
- .NET SDK 8.0+
- Visual Studio 2022 或 JetBrains Rider
- PostgreSQL 14+ (或其他兼容数据库)
安装
bash
dotnet new install Smart.WebAPI.Template
创建项目
bash
dotnet new smart.api -n MyDemo
添加服务
csharp
// 实现 IHostedService
public class DemoService : BackgroundService
{
protected override Task ExecuteAsync(CancellationToken stoppingToken)
{
// 你的业务逻辑
}
}
// 通过特性自动注册
[Service(ServiceLifetime.Singleton, InjectScheme.OnlySelf)]
public class DataService
{
// 你的业务逻辑
}
部署要求
必须使用「依赖框架」部署模式
项目发布时请使用以下命令配置(目标框架由您指定,此处为net8.0):
bash
dotnet publish -c Release --self-contained false -f net8.0
部署模式 | 适用场景 | 本模板要求 |
---|---|---|
依赖框架 | 目标机器已安装 .NET 运行时 | ✅ 强制使用 |
独立部署 | 无运行时环境 | ❌ 不支持 |
推荐搭配 .NET 运行时安装脚本 部署
开发建议
服务注册约定
用户需要了解Smart.Inject框架的用法,访问Smart.Inject。
Developed by zenglei
This package has no dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
4.0.1 | 0 | 2/16/2025 |
4.0.0 | 31 | 2/15/2025 |
3.2.0 | 44 | 2/14/2025 |
3.1.2 | 70 | 2/9/2025 |
3.1.1 | 96 | 12/29/2024 |
3.1.0 | 106 | 12/7/2024 |
3.0.1 | 99 | 12/7/2024 |
3.0.0 | 102 | 12/7/2024 |
2.0.0 | 100 | 11/27/2024 |
1.0.0.8 | 113 | 11/11/2024 |
1.0.0.7 | 100 | 10/30/2024 |
1.0.0.6 | 99 | 10/29/2024 |
1.0.0.5 | 99 | 10/29/2024 |
1.0.0.4 | 86 | 10/29/2024 |
1.0.0.3 | 97 | 10/29/2024 |
1.0.0.2 | 96 | 10/29/2024 |
1.0.0.1 | 112 | 10/27/2024 |
1.0.0 | 88 | 10/22/2024 |