Sparkdo.AspNetCore.Mvc 1.0.1

There is a newer prerelease version of this package available.
See the version list below for details.
dotnet add package Sparkdo.AspNetCore.Mvc --version 1.0.1
                    
NuGet\Install-Package Sparkdo.AspNetCore.Mvc -Version 1.0.1
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="Sparkdo.AspNetCore.Mvc" Version="1.0.1" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Sparkdo.AspNetCore.Mvc" Version="1.0.1" />
                    
Directory.Packages.props
<PackageReference Include="Sparkdo.AspNetCore.Mvc" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add Sparkdo.AspNetCore.Mvc --version 1.0.1
                    
#r "nuget: Sparkdo.AspNetCore.Mvc, 1.0.1"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package Sparkdo.AspNetCore.Mvc@1.0.1
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=Sparkdo.AspNetCore.Mvc&version=1.0.1
                    
Install as a Cake Addin
#tool nuget:?package=Sparkdo.AspNetCore.Mvc&version=1.0.1
                    
Install as a Cake Tool

Sparkdo.AspNetCore.Mvc

Sparkdo ASP.NET Core MVC 库,提供对 ASP.NET Core MVC 的扩展和集成。

功能特性

  • MVC 控制器基类(支持 API 和视图)
  • 约定式控制器支持
  • API 版本控制集成
  • 本地化支持
  • 工作单元集成
  • 对象映射集成
  • 验证集成
  • 多租户支持
  • 功能管理集成
  • 与 Sparkdo 框架无缝集成

安装

<PackageReference Include="Sparkdo.AspNetCore.Mvc" Version="x.x.x" />

核心组件

SparkdoController & SparkdoControllerBase

提供控制器常用的依赖注入属性和辅助方法:

  • LazyServiceProvider: 延迟服务提供者
  • UnitOfWorkManager: 工作单元管理器
  • ObjectMapper: 对象映射器
  • CurrentUser: 当前用户信息
  • CurrentTenant: 当前租户信息
  • AuthorizationService: 授权服务
  • Logger: 日志记录器
  • L: 本地化字符串提供者

约定式控制器

支持通过约定自动生成 Web API 控制器:

  • 自动识别应用服务并生成对应的控制器
  • 支持 API 版本控制
  • 支持多种路由约定

API 版本控制

集成 Asp.Versioning 库,提供 API 版本控制功能:

  • 支持 URL 版本控制
  • 支持 HTTP 头版本控制
  • 支持查询参数版本控制

扩展性

该库提供了完整的 ASP.NET Core MVC 集成功能,可以通过以下方式扩展:

  1. 继承 SparkdoControllerSparkdoControllerBase 创建自定义控制器
  2. 通过 SparkdoAspNetCoreMvcOptions 配置 MVC 行为
  3. 实现自定义的约定式控制器设置
  4. 扩展本地化资源和验证规则

代码结构说明

本项目包含以下主要组件:

控制器基类

  • SparkdoController: 适用于包含视图的控制器基类
  • SparkdoControllerBase: 适用于 API 控制器的基类

MVC 配置

  • SparkdoAspNetCoreMvcModule: MVC 模块配置
  • SparkdoAspNetCoreMvcOptions: MVC 配置选项

约定式控制器

  • SparkdoConventionalControllerOptions: 约定控制器选项
  • ConventionalControllerSetting: 约定控制器设置
  • SparkdoServiceConvention: 服务约定实现

API 版本控制

  • SparkdoApiVersioningExtensions: API 版本控制扩展
  • SparkdoConventionalApiControllerSpecification: 约定 API 控制器规范

扩展方法

  • ActionDescriptorExtensions: Action 描述符扩展
  • ViewContextExtensions: 视图上下文扩展
  • SparkdoMvcBuilderExtensions: MVC 构建器扩展

所有公共接口和类都添加了详细的 XML 文档注释,便于开发者理解和使用。

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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
1.0.2-preview.4 53 2/8/2026
1.0.2-preview.3 53 2/1/2026
1.0.2-preview.2 51 1/31/2026
1.0.2-preview.1 166 12/4/2025
1.0.1 167 11/27/2025
1.0.0 169 11/25/2025
1.0.0-preview.5 121 10/24/2025