Sparkdo.Data
1.0.1
.NET 10.0
This package targets .NET 10.0. The package is compatible with this framework or higher.
.NET Standard 2.0
This package targets .NET Standard 2.0. The package is compatible with this framework or higher.
There is a newer prerelease version of this package available.
See the version list below for details.
See the version list below for details.
dotnet add package Sparkdo.Data --version 1.0.1
NuGet\Install-Package Sparkdo.Data -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.Data" Version="1.0.1" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="Sparkdo.Data" Version="1.0.1" />
<PackageReference Include="Sparkdo.Data" />
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.Data --version 1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: Sparkdo.Data, 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.Data@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.Data&version=1.0.1
#tool nuget:?package=Sparkdo.Data&version=1.0.1
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
Sparkdo.Data
Sparkdo 数据库连接管理库,提供数据库连接字符串解析、数据过滤等功能。
功能特性
- 数据库连接字符串管理
- 多数据库支持
- 数据过滤器(软删除、多租户等)
- 数据种子(Data Seeding)
- 连接字符串解析器
- 数据库迁移支持
安装
<PackageReference Include="Sparkdo.Data" Version="x.x.x" />
核心组件
SparkdoDataModule
数据模块,负责注册数据相关的服务:
IDataFilter: 数据过滤器接口IConnectionStringResolver: 连接字符串解析器接口IDataSeeder: 数据种子接口
SparkdoDbConnectionOptions
数据库连接配置选项,支持:
- 多数据库连接字符串配置
- 数据库映射配置
- 连接字符串获取与解析
DefaultDataFilter
默认数据过滤器实现,提供:
- 软删除过滤
- 多租户数据隔离
- 可扩展的数据过滤机制
DefaultConnectionStringResolver
默认连接字符串解析器,支持:
- 基于名称的连接字符串查找
- 数据库映射回退机制
- 默认连接字符串回退
DefaultDataSeeder
默认数据种子实现,用于:
- 初始化数据库数据
- 执行数据种子贡献者
- 支持增量数据种子
扩展性
该库提供了完整的数据基础设施,可以通过以下方式扩展:
- 实现自定义的
IDataFilter来添加特定的数据过滤逻辑 - 实现自定义的
IConnectionStringResolver来添加特定的连接字符串解析逻辑 - 实现自定义的
IDataSeedContributor来添加特定的数据种子逻辑 - 通过
SparkdoDbConnectionOptions配置数据库连接行为
代码结构说明
本项目包含以下主要组件:
配置选项
SparkdoDbConnectionOptions: 数据库连接配置选项SparkdoDataSeedOptions: 数据种子配置选项SparkdoDataFilterOptions: 数据过滤器配置选项
数据过滤器
IDataFilter: 数据过滤器接口DefaultDataFilter: 默认数据过滤器实现DataFilterState: 数据过滤状态
连接字符串管理
IConnectionStringResolver: 连接字符串解析器接口DefaultConnectionStringResolver: 默认连接字符串解析器实现ConnectionStringNameAttribute: 连接字符串名称特性
数据种子
IDataSeeder: 数据种子接口DefaultDataSeeder: 默认数据种子实现IDataSeedContributor: 数据种子贡献者接口
数据库信息
SparkdoDatabaseInfo: 数据库信息SparkdoDatabaseInfoDictionary: 数据库信息字典
所有公共接口和类都添加了详细的 XML 文档注释,便于开发者理解和使用。
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. 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. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
.NETStandard 2.0
- JetBrains.Annotations (>= 2025.2.2)
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.0)
- Microsoft.Extensions.Configuration (>= 10.0.0)
- Microsoft.Extensions.Configuration.CommandLine (>= 10.0.0)
- Microsoft.Extensions.Configuration.EnvironmentVariables (>= 10.0.0)
- Microsoft.Extensions.Configuration.FileExtensions (>= 10.0.0)
- Microsoft.Extensions.Configuration.Json (>= 10.0.0)
- Microsoft.Extensions.Configuration.UserSecrets (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
- Microsoft.Extensions.DependencyModel (>= 10.0.0)
- Microsoft.Extensions.FileProviders.Physical (>= 10.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Localization (>= 10.0.0)
- Microsoft.Extensions.Logging (>= 10.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Options (>= 10.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.0)
- Microsoft.Extensions.Options.DataAnnotations (>= 10.0.0)
- Nito.AsyncEx.Context (>= 5.1.2)
- Sparkdo.EventBus.Abstractions (>= 1.0.1)
- Sparkdo.Uow (>= 1.0.1)
- System.Linq.Dynamic.Core (>= 1.7.0)
- System.Runtime.Loader (>= 4.3.0)
- System.Text.Json (>= 10.0.0)
-
net10.0
- JetBrains.Annotations (>= 2025.2.2)
- Microsoft.Extensions.Configuration (>= 10.0.0)
- Microsoft.Extensions.Configuration.CommandLine (>= 10.0.0)
- Microsoft.Extensions.Configuration.EnvironmentVariables (>= 10.0.0)
- Microsoft.Extensions.Configuration.FileExtensions (>= 10.0.0)
- Microsoft.Extensions.Configuration.Json (>= 10.0.0)
- Microsoft.Extensions.Configuration.UserSecrets (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection (>= 10.0.0)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.0)
- Microsoft.Extensions.DependencyModel (>= 10.0.0)
- Microsoft.Extensions.FileProviders.Physical (>= 10.0.0)
- Microsoft.Extensions.Hosting.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Localization (>= 10.0.0)
- Microsoft.Extensions.Logging (>= 10.0.0)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.0)
- Microsoft.Extensions.Options (>= 10.0.0)
- Microsoft.Extensions.Options.ConfigurationExtensions (>= 10.0.0)
- Microsoft.Extensions.Options.DataAnnotations (>= 10.0.0)
- Nito.AsyncEx.Context (>= 5.1.2)
- Sparkdo.EventBus.Abstractions (>= 1.0.1)
- Sparkdo.Uow (>= 1.0.1)
- System.Linq.Dynamic.Core (>= 1.7.0)
NuGet packages (5)
Showing the top 5 NuGet packages that depend on Sparkdo.Data:
| Package | Downloads |
|---|---|
|
Sparkdo.MultiTenancy.Abstractions
Sparkdo 框架的多租户抽象实现。提供多租户功能的核心接口和抽象类定义。 |
|
|
Sparkdo.Ddd.Domain
Sparkdo DDD 领域模型库,提供领域驱动设计的核心组件实现 |
|
|
Sparkdo.Ddd.Application.Contracts
Sparkdo DDD应用层契约库,提供应用服务接口定义和数据传输对象(DTO)基类 |
|
|
Sparkdo.TenantManagement.Domain
Sparkdo 租户管理领域层,提供租户管理的核心业务逻辑和数据访问接口 |
|
|
Sparkdo.AuditLogging.Domain
Sparkdo 审计日志领域层,提供审计日志的核心业务逻辑和数据访问接口 |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.0.2-preview.1 | 164 | 12/4/2025 |
| 1.0.1 | 2,193 | 11/27/2025 |
| 1.0.0 | 2,111 | 11/25/2025 |
| 1.0.0-preview.5 | 107 | 10/24/2025 |