SQL命令生成器:GenerateSqlCmdByTableFields,GenerateSqlCmdByObjectClass
作者:C/S框架网|www.cscode.ne  发布日期:2020-04-24 15:41:38
  SQL命令生成器:GenerateSqlCmdByTableFields,GenerateSqlCmdByObjectClass

SQL命令生成器:GenerateSqlCmdByTableFields,GenerateSqlCmdByObjectClass


开发框架支持2种表结构模型:

1. 静态类 (Static Class Model)

2. 实体类 (Entity Object Model)


可以使用代码生成器生成C#源码:

贴图图片-SQL命令生成器



在DAL层的CreateSqlGenerator方法,要根据当前模型创建对应的SQL命令生成器。

如《单号规则》定义的sys_DocNoRole表,对应的DAL层的CreateSqlGenerator方法代码如下:

C# Code:

/// <summary>
/// 根据表名获取该表对应的SQL命令生成器
/// </summary>
/// <param name="tableName">表名</param>
/// <returns></returns>
protected override IGenerateSqlCommand CreateSqlGenerator(DataTable table)
{
  Type ORM
= null;
  
if (table.TableName == sys_DocNoRule.__TableName) ORM = typeof(sys_DocNoRule);
  
if (ORM == null) throw new Exception(table.TableName + "表没有ORM模型!");
  
  
//静态类模型SQL命令生成器
  
return new GenerateSqlCmdByTableFields(ORM, table, this.GeneratorFactory);
  
  
//对象实体类模型SQL命令生成器
  
//return new GenerateSqlCmdByObjectClass(ORM, table, this.GeneratorFactory);
  
}
  
  
//来源:C/S框架网 | www.csframework.com | QQ:23404761



sys_DocNoRole表是生成的静态类,必须使用GenerateSqlCmdByTableFields实例化。


若是实体类,必须使用GenerateSqlCmdByObjectClass实例化。




C/S框架网|原创精神.创造价值.打造精品

扫一扫加微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务


上一篇 下一篇