Skip to content

Interface IDbProvider

Namespace: Tool.SqlCore
Assembly: Tool.Net.dll

SQL数据化的模型接口

csharp
public interface IDbProvider

Extension Methods

ObjectExtension.Add<T>(object, object, object), ObjectExtension.CopyEntity(object, object, params string[]), ObjectExtension.EntityToJson(object), ObjectExtension.EntityToJson(object, bool), ObjectExtension.EntityToJson(object, bool, string), DictionaryExtension.GetDictionary(object), TypeExtension.GetFieldKey(object, string, out bool), TypeExtension.GetFieldKey<T>(object, string, out bool), TypeExtension.GetFieldKey(object, Type, string, out bool), ObjectExtension.GetIntPtr(object), ObjectExtension.GetIntPtrInt(object), TypeExtension.GetPropertieFind(object, string, bool), TypeExtension.GetProperties(object), TypeExtension.GetPropertyKey(object, string, out bool), TypeExtension.GetPropertyKey<T>(object, string, out bool), TypeExtension.GetPropertyKey(object, Type, string, out bool), TypeExtension.GetValue(object, PropertyDescriptor), TypeExtension.GetValue(object, string, bool), TypeExtension.GetValue(object, string), ObjectExtension.Read<T>(object, object, int, int), ObjectExtension.Read<T>(object, int, object, int, int), DictionaryExtension.SetDictionary(object, IDictionary<string, object>), TypeExtension.SetFieldKey(object, string, object), TypeExtension.SetFieldKey<T>(object, string, object), TypeExtension.SetFieldKey(object, Type, string, object), TypeExtension.SetPropertyKey(object, string, object), TypeExtension.SetPropertyKey<T>(object, string, object), TypeExtension.SetPropertyKey(object, Type, string, object), TypeExtension.SetValue(object, PropertyDescriptor, object), TypeExtension.SetValue(object, string, object, bool), TypeExtension.SetValue(object, string, object), ObjectExtension.ToBase64String(object), ObjectExtension.ToBytes(object), ObjectExtension.ToBytes(object, out Type), DictionaryExtension.ToDictionary(object), DictionaryExtension.ToDictionary<T>(object), DictionaryExtension.ToIDictionary(object), DictionaryExtension.ToIDictionary<T>(object), ObjectExtension.ToJson(object), ObjectExtension.ToJson(object, JsonSerializerOptions), ObjectExtension.ToJsonWeb(object), ObjectExtension.ToJsonWeb(object, Action<JsonSerializerOptions>), ObjectExtension.ToTryVar<T>(object, T), ObjectExtension.ToVar<T>(object), ObjectExtension.ToVar(object, Type, bool), ObjectExtension.ToVar(object, string), ObjectExtension.ToXml(object)

Remarks

代码由逆血提供支持

Properties

ParameterPrefix

参数表示符号 '@' 或 ':'

csharp
string ParameterPrefix { get; }

Property Value

string

Methods

DeriveParameters(IDbCommand)

读取存储过程参数填充到 .Parameters 集合(内置实现采用虚构委托,如在意性能请自行实现,示例:DbCommandBuilder.DeriveParameters(cmd) 每个数据库下面都有对应的实现类。)

csharp
void DeriveParameters(IDbCommand cmd)

Parameters

cmd IDbCommand

数据库对象

GetInsertParams(DbHelper, IDictionary<string, object>, out string, out string)

根据键值对生成 Insert 部分语法,和值添加对象

csharp
List<DbParameter> GetInsertParams(DbHelper database, IDictionary<string, object> keyValues, out string key, out string value)

Parameters

database DbHelper

数据库引擎

keyValues IDictionary<string, object>

数据集键值对

key string

返回生成的部分SQL语句

value string

返回生成的部分SQL语句

Returns

List<DbParameter>

GetLastIdSql()

获取插入数据的主键ID(SQL)

csharp
string GetLastIdSql()

Returns

string

GetPagerSet(DbHelper, PagerParameters)

分页核心方法,建议重写,底层默认实现 SqlServer 分页。

csharp
PagerSet GetPagerSet(DbHelper dbHelper, PagerParameters pramsPager)

Parameters

dbHelper DbHelper

数据库引擎

pramsPager PagerParameters

分页参数

Returns

PagerSet

返回分页对象实体

GetPagerSetAsync(DbHelper, PagerParameters)

分页核心方法,建议重写,底层默认实现 SqlServer 分页。

csharp
Task<PagerSet> GetPagerSetAsync(DbHelper dbHelper, PagerParameters pramsPager)

Parameters

dbHelper DbHelper

pramsPager PagerParameters

分页参数

Returns

Task<PagerSet>

返回分页对象实体

GetParam(ref DbParameter, object, ParameterDirection, Type, string, int)

绑定数据,需要用户实现,默认不实现,内置采用系统默认类型,满足基本类型的对应

csharp
void GetParam(ref DbParameter paraObj, object paraValue, ParameterDirection direction, Type paraType, string sourceColumn, int size)

Parameters

paraObj DbParameter

数据库映射对象

paraValue object

direction ParameterDirection

指定查询内的有关 的参数的类型。

paraType Type

类型

sourceColumn string

源列

size int

大小

GetUpdateParams(DbHelper, IDictionary<string, object>, out string)

根据键值对生成 Update 部分语法,和值添加对象

csharp
List<DbParameter> GetUpdateParams(DbHelper database, IDictionary<string, object> keyValues, out string strsql)

Parameters

database DbHelper

数据库引擎

keyValues IDictionary<string, object>

数据集键值对

strsql string

返回生成的部分SQL语句

Returns

List<DbParameter>

Instance(DbProviderType, string)

获取当前对象的实例

csharp
DbProviderFactory Instance(DbProviderType dbProviderType, string dbProviderName)

Parameters

dbProviderType DbProviderType

数据库类型

dbProviderName string

数据库类型定义名称

Returns

DbProviderFactory

IsBackupDatabase()

无用,返回true

csharp
bool IsBackupDatabase()

Returns

bool

IsCompactDatabase()

无用,返回true

csharp
bool IsCompactDatabase()

Returns

bool

IsDbOptimize()

无用,返回true

csharp
bool IsDbOptimize()

Returns

bool

IsFullTextSearchEnabled()

无用,返回true

csharp
bool IsFullTextSearchEnabled()

Returns

bool

IsShrinkData()

无用,返回true

csharp
bool IsShrinkData()

Returns

bool

IsStoreProc()

无用,返回true

csharp
bool IsStoreProc()

Returns

bool

基于Apache-2.0协议开源