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

.NET 8+ NuGet NLog

基于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