Table of Contents

EngineBase 类

命名空间
ShadowSql.Engines
程序集
ShadowSql.Core.dll

数据库引擎基类

public abstract class EngineBase : ISqlEngine, ISqlValueComponent
继承
EngineBase
实现
Derived
继承成员
扩展方法

构造函数

EngineBase(ISelectComponent, ISqlValueComponent, IPluginProvider?)

数据库引擎基类

protected EngineBase(ISelectComponent select, ISqlValueComponent sqlVale, IPluginProvider? plugin)

参数

select ISelectComponent
sqlVale ISqlValueComponent
plugin IPluginProvider

属性

PluginProvider

插件

public IPluginProvider? PluginProvider { get; }

属性值

IPluginProvider

SelectComponent

数据获取组件

public ISelectComponent SelectComponent { get; }

属性值

ISelectComponent

SqlValeComponent

数据库值处理组件

public ISqlValueComponent SqlValeComponent { get; }

属性值

ISqlValueComponent

方法

ColumnAs(StringBuilder, string)

字段别名格式化

public virtual void ColumnAs(StringBuilder sql, string alias)

参数

sql StringBuilder
alias string

Count(StringBuilder)

计数sql

public virtual void Count(StringBuilder sql)

参数

sql StringBuilder

DeletePrefix(StringBuilder)

删除前缀

public virtual void DeletePrefix(StringBuilder sql)

参数

sql StringBuilder

Escape(string)

转义(防sql注入) 依赖转义的功能慎用 简单转义无法杜绝sql注入

public virtual string Escape(string sqlValue)

参数

sqlValue string

返回

string

GetPlugin<TComponent>()

获取组件(插件)

public virtual TComponent? GetPlugin<TComponent>() where TComponent : class

返回

TComponent

类型参数

TComponent

Identifier(StringBuilder, string)

标识符格式化

public abstract void Identifier(StringBuilder sql, string name)

参数

sql StringBuilder
name string

InsertMultiPrefix(StringBuilder)

插入多条前缀

public virtual void InsertMultiPrefix(StringBuilder sql)

参数

sql StringBuilder

InsertPrefix(StringBuilder)

插入单条前缀

public virtual void InsertPrefix(StringBuilder sql)

参数

sql StringBuilder

InsertedIdentity(StringBuilder)

插入自增列sql

public abstract bool InsertedIdentity(StringBuilder sql)

参数

sql StringBuilder

返回

bool

LogicNot(StringBuilder)

否定sql条件

public virtual void LogicNot(StringBuilder sql)

参数

sql StringBuilder

Parameter(StringBuilder, string)

参数格式化

public virtual void Parameter(StringBuilder sql, string name)

参数

sql StringBuilder
name string

SelectPrefix(StringBuilder)

SELECT前缀

public virtual void SelectPrefix(StringBuilder sql)

参数

sql StringBuilder

SqlValue<T>(T)

处理SqlVale

public virtual ISqlValue SqlValue<T>(T value)

参数

value T

返回

ISqlValue

类型参数

T

TableAs(StringBuilder, string)

表别名格式化

public virtual void TableAs(StringBuilder sql, string alias)

参数

sql StringBuilder
alias string

TruncatePrefix(StringBuilder)

清空表前缀

public virtual void TruncatePrefix(StringBuilder sql)

参数

sql StringBuilder

UpdatePrefix(StringBuilder)

修改前缀

public virtual void UpdatePrefix(StringBuilder sql)

参数

sql StringBuilder