RuoVea.ExSugar 8.0.0.2

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

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

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||create_time 默认赋值系统当前时间
Creator 赋值当前登录用户(若有)
IsDelete||is_delete 赋值默认值0

修改时

字段属性包涵

ModifyTime||modify_time 默认赋值系统当前时间
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 net8.0 is compatible.  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