RuoVea.ExSugar 6.0.18.5

There is a newer version of this package available.
See the version list below for details.
dotnet add package RuoVea.ExSugar --version 6.0.18.5                
NuGet\Install-Package RuoVea.ExSugar -Version 6.0.18.5                
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="RuoVea.ExSugar" Version="6.0.18.5" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add RuoVea.ExSugar --version 6.0.18.5                
#r "nuget: RuoVea.ExSugar, 6.0.18.5"                
#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.
// Install RuoVea.ExSugar as a Cake Addin
#addin nuget:?package=RuoVea.ExSugar&version=6.0.18.5

// Install RuoVea.ExSugar as a Cake Tool
#tool nuget:?package=RuoVea.ExSugar&version=6.0.18.5                

RuoVea.ExSqlSugar

ExSqlSugar SqlSugar扩展类库,支持简体中文、繁体中文、粤语、日语、法语、英语.

使用方式

方式一、

1.定义类 DefultDbContext继承 DbContext

/// <summary>
/// DefultDbContext
/// </summary>
public class DefultDbContext : DbContext
{
    /// <summary>
    /// DefultDbContext
    /// </summary>
    /// <param name="config"></param>
    public DefultDbContext(ConnectionConfig config) : base(config)
    {
    }
}

2.注入使用DbContext:builder.Services.AddDbContextSetup(x=>{});

builder.Services
    .AddDbContextSetup(provide=>new DefultDbContext(AppSettings.GetSection("DefultDbConnString").Get<ConnectionConfig>()))

3.使用的地方注入这个DefultDbContext

public class DemoService : IDemoService
{
    private readonly DefultDbContext _defultDbContext;
    /// <summary>
    /// 
    /// </summary>
    /// <param name="defultDbContext"></param>
    public DemoService(DefultDbContext defultDbContext)
    {
        _defultDbContext = defultDbContext;
    }
}

方式二、

注册服务 builder.Services.AddSqlSugarSetup(...);// 注册服务

builder.Services.AddSqlSugarSetup();// 注册服务

使用的地方使用

public class DemoService: IDemoService
{
    SugarRepository<SysUser>  _sysUserRepository;

    public DemoService(SugarRepository<SysUser> sysUserRepository) {
        _sysUserRepository = sysUserRepository;
    }
}

两种方式默认开启了标记删除过滤

按照程序集方式注入应用服务 builder.Services.AddInjectServiceSetup(assembly,)

添加sql执行相关日志

builder.Services.AddRestFulLogSetup<TFilterType>();

创建时

字段属性包涵

CreateTime 默认赋值系统当前时间
Creator 赋值当前登录用户(若有)

创建时

字段属性包涵

ModifyTime 默认赋值系统当前时间
Modifier 赋值当前登录用户(若有)

查询时

字段模型继承了

1、IDeletedEntity 将自动过滤 IsDeleted数据

2、EntityBase、ICreatorFilter 将自动过滤 UserId数据

内置过滤器

配置实体假删除过滤器

IDeletedEntity

创建用户赋值

EntityBase、ICreatorFilter

租户数据过滤

ITenantIdFilter

自定义实体过滤器接口

ICustormerEntityFilter

内置事务单元

使用方式、

1、开启事务单元 services.AddSqlSugarSetup(IsAllUnitOfWork:true);// 注册服务 开启全局事务单元

2、在需要开启的控制器方法增加事务单元特性 [UnitOfWork]

配置文件

  /* 数据库链接 具体配置见SqlSugar官网(第一个为默认库不需要设置ConfigId)*/
  "ConnectionConfigs": [
    {
      "DbType": "Sqlite", // MySql、SqlServer、Sqlite、Oracle、PostgreSQL、Dm、Kdbndp、Oscar、MySqlConnector、Access、OpenGauss、QuestDB、HG、ClickHouse、GBase、Odbc、Custom
      "ConnectionString": "DataSource=./ruovea.dll", // 库连接字符串
      "EnableInitDb": false, // 启用库表初始化
      "EnableInitSeed": false, // 启用种子初始化
      "EnableDiffLog": false, // 启用库表差异日志
      "EnableUnderLine": false, // 启用驼峰转下划线
      "IsEncrypt": false, //是否加密
      "DbSecurity": "" //链接字符串解密密钥
    }
    // 其他数据库配置(可以配置多个)
    //{
    //    "ConfigId": "test",
    //    "DbType": "Sqlite",
    //    "ConnectionString": "DataSource=./test.db", // 库连接字符串
    //    "EnableInitDb": false, // 启用库表初始化
    //    "EnableInitSeed": false, // 启用种子初始化
    //    "EnableDiffLog": false, // 启用库表差异日志
    //    "EnableUnderLine": false // 启用驼峰转下划线
    //    "IsEncrypt": false, //是否加密
    //    "DbSecurity": "" //链接字符串解密密钥
    //}
  ],

  "AssemblysService": [] //需要DI的服务

Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (1)

Showing the top 1 NuGet packages that depend on RuoVea.ExSugar:

Package Downloads
RuoVea.OmiConfig

参数配置

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
8.0.0.5 0 9/22/2024
8.0.0.4 0 9/22/2024
8.0.0.3 40 9/19/2024
8.0.0.2 78 9/11/2024
8.0.0.1 81 8/29/2024
8.0.0 80 8/28/2024
7.0.0.5 0 9/22/2024
7.0.0.4 0 9/22/2024
7.0.0.3 33 9/19/2024
7.0.0.2 68 9/11/2024
7.0.0.1 71 8/29/2024
7.0.0 79 8/28/2024
6.0.18.8 0 9/22/2024
6.0.18.7 36 9/19/2024
6.0.18.6 90 9/11/2024
6.0.18.5 73 8/29/2024
6.0.18.4 81 8/28/2024
6.0.18.3 87 8/25/2024
6.0.18.2 119 3/13/2024
6.0.18.1 112 3/13/2024
6.0.18 249 3/25/2023
6.0.17 215 3/25/2023
6.0.16 213 3/25/2023
6.0.15 228 3/24/2023
6.0.13 221 3/15/2023
6.0.12 209 3/14/2023
6.0.11 226 3/14/2023
6.0.10 234 3/11/2023
6.0.9 475 8/22/2022
6.0.8 461 8/18/2022
6.0.7 426 8/17/2022
6.0.6 440 8/16/2022
6.0.5 476 7/5/2022
6.0.4 484 7/5/2022
6.0.3 499 6/10/2022
6.0.2 540 4/11/2022
6.0.1 547 4/11/2022
6.0.0 563 3/18/2022
5.0.1 622 3/18/2022
5.0.0 549 3/18/2022