OrangeCloud.Core 3.3.3.6

dotnet add package OrangeCloud.Core --version 3.3.3.6
                    
NuGet\Install-Package OrangeCloud.Core -Version 3.3.3.6
                    
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="OrangeCloud.Core" Version="3.3.3.6" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="OrangeCloud.Core" Version="3.3.3.6" />
                    
Directory.Packages.props
<PackageReference Include="OrangeCloud.Core" />
                    
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 OrangeCloud.Core --version 3.3.3.6
                    
#r "nuget: OrangeCloud.Core, 3.3.3.6"
                    
#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 OrangeCloud.Core@3.3.3.6
                    
#: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=OrangeCloud.Core&version=3.3.3.6
                    
Install as a Cake Addin
#tool nuget:?package=OrangeCloud.Core&version=3.3.3.6
                    
Install as a Cake Tool

OrangeCloud.Core

OrangeCloud.Core 是一个基于 dapper 的 ORM

功能介绍

  1. 支持批量生成数据表实体类
运行:go.aspx
  1. 支持分表插入
ORM.Build<T>()
.Insert(model, true)
.SetSplitTable(new MSplitTableConfig { Type = ESplitTableType.DateTime, DateTimeConfig = "yyyyMM" })
.Execute();
  1. 支持读写分离
// 读库:
<add key="FSystemRead" value="server=192.168.1.101,192.168.1.102,192.168.1.103;database=FSystem;uid=sa;pwd=123456"/>

// 写库:
<add key="FSystemWrite" value="server=192.168.1.100;database=FSystem;uid=sa;pwd=123456"/>
  1. 支持 BulkCopy
// 数据类型:DataTable
ORM.Build<T>().BulkCopy(dataTable);

// 数据类型:List<T>
// 参数 2:指定插入的列
ORM.Build<T>().BulkCopy(listData, o => new { o.col1, o.col2 });
  1. 支持动态查询写法(根据参数自动拼接条件)
// 可访问菜单:按条件查询
https://www.107000.com/T-Doc/7
  1. 支持简便的分页查询
ORM.Build<T>()
.Get(it => it.Where(o => o.Mark > 0).OrderBy(o => o.CreateDate))
.ToPageList(1, 30);
  1. 支持简便的事务处理
using(var trans = ORM.TransMaster())
{
    --插入数据并获得ID
    var id = ORM.Insert(model, true);
    --修改数据
    ORM.Update(model);
    --提交事务
    trans.Complete();
}

如何使用

  1. 单独创建 Entity 层,在 Entity 层引用 OrangeCloud.Core.dll
  2. 配置项目 config 文件
{

  "ConfigType": "Production",

  "OrangeCloud.Core.DataTable.Type": "SqlServer", //数据库类型:(SqlServer;MySql;)

  "OrangeCloud.Core.DatabaseKey.Prefix": "", //数据库Key前缀

  "OrangeCloud.Core.DatabaseKey.Suffix": "", //数据库Key后缀

  "OrangeCloud.Core.DatabaseConfig.Encryption": false, //数据库Config.Value是否加密 true,false

  "OrangeCloud.Core.FillEntity": "OrangeCloud.CoreEntity,OrangeCloud.CoreEntity,FillEntity", //填充系统字段映射的实现类

  "OrangeCloud.Core.IsDebug": false, //是否是调试(true=调试模式:忽略菜单权限, false=正式环境)

  "OrangeCloud.Log.IsSave": false, //是否输出SQL语句

  "OrangeCloud.Log.SavePath": "E:\\Log\\", //输出路径

  "OrangeCloud.Cookie.Login": "OrangeCloudOMS", //单点登录Cookie Name

  "OrangeCloud.Cache.ServerList": "127.0.0.1:10600", //分布式缓存服务器:OCache

  "OrangeCloud.Redis.ServerList": "127.0.0.1:6379", //分布式缓存服务器:Redis

  "OrangeCloud.Upload.ServerList": "127.0.0.1:10300", //分布式上传服务器

  "OrangeCloud.Upload.FileUrl": "https://cdn.xxx.com/", //分布式文件查看地址

  // 写库
  "DBWrite": "server=127.0.0.1\\SQL2016,1433;database=DB;uid=sa;pwd=123456;",

  // 读库
  "DBRead": "server=127.0.0.1\\SQL2016,1433;database=DB;uid=sa;pwd=123456;"

}

作者

樊嵘

教程

https://www.107000.com/T-Doc/1

更新日志

https://www.107000.com/T-Doc/2085

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.  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 was computed.  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
3.3.3.6 34 6/3/2026
3.3.3.5 30 6/3/2026
3.3.3.3 57 6/1/2026
3.3.3.2 51 6/1/2026
3.3.3.1 54 6/1/2026
3.3.3 49 6/1/2026
3.3.2.7 54 5/28/2026
3.3.2.6 83 5/27/2026
3.3.2.5 93 5/26/2026
3.3.2.3 88 5/26/2026
3.3.2.2 101 5/23/2026
3.3.2.1 107 4/14/2026
3.3.2 100 4/7/2026
3.3.1.9 130 1/14/2026
3.3.1.8 126 1/9/2026
3.3.1.6 126 1/9/2026
3.3.1.5 198 10/16/2025
3.3.1.3 210 9/23/2025
3.3.1.2 214 9/4/2025
3.3.1.1 179 7/31/2025
Loading failed