开发数据访问层DAL | MiniFramework蝇量框架 | Winform框架|C/S开发框架
作者:csframework|C/S框架网  发布日期:2022/02/17 12:34:59

开发数据访问层DAL | MiniFramework蝇量框架 | Winform框架|C/S开发框架

开发数据访问层DAL - MiniFramework蝇量框架 - Winform框架

一、dalBase类

dalBase类,数据访问层基类,定义一组通用的方法或函数,为派生类提供更多的接口支持。

MiniFramework蝇量框架的 dalBase,默认定义了两个数据库连接:

系统数据库

C# 全选
        /// <summary>
        /// 系统数据库
        /// </summary>
        protected IDatabase _DatabaseSystem = null;

账套数据库

C# 全选
        /// <summary>
        /// 当前账套数据库
        /// </summary>
        protected IDatabase _Database = null;

dalBase 所有成员变量、方法和函数

开发数据访问层DAL | MiniFramework蝇量框架 | Winform框架|C/S开发框架

序号方法、函数名称说明
1BeginTransaction启动事务
2CommitTransaction提交事务
3RollbackTransaction回滚事务
4CreateSqlGenerator根据表名创建SQL命令生成器对象实例
5GetDataSN获取当前记录的流水号码、单据号码
6GeneratorFactory默认SQL命令生成器的对象工厂
7GetDatabase根据数据库编号创建数据库对象实例

二、用户自定义DAL

用户自定义数据访问层,必须继承 dalBase 基类。

dalOrder 派车管理

C# 全选
    /// <summary>
    /// TMS系统物流派单数据访问层
    /// </summary>
    public partial class dalOrder : dalBase
    {
        IDatabase db_gSales = DatabaseProvider.GetDatabase(DBIDs.gSales);

        /// <summary>
        /// 获取司机资料
        /// </summary>
        /// <returns></returns>
        internal DataTable GetDrivers()
        {
            //表:LogisticsTruck
            var sql = $"select drivername as 驾驶员,driverphone as 手机号码,remark as 短号,licenseplatenumber as 车牌号,LoadWeight as 吨位,companyname as 定位设备号,iscompany as 是否能用 from LogisticsTruck where status = '1'  and (trademark = '{Loginer.Current.DataSetName}' or  isnull(trademark,'') = '{Loginer.Current.DataSetName + Loginer.Current.DataSetProperties}') order by drivername ";
            return db_gSales.GetTable(sql, "LogisticsTruck");
        }

        /// <summary>
        /// 获取物流编组
        /// </summary>
        /// <param name="SONO"></param>
        /// <returns></returns>
        internal string GetGroupNo(string SONO)
        {
            var sql = $"SELECT TOP 1 LogisticGroup from LogisticsInfo where sheetno = @sheetno";
            var cmd = db_gSales.CreateCommand(sql);
            cmd.AddParam("@sheetno", SONO);
            return db_gSales.ExecuteScalar(cmd.Command).ToStringEx();
        }
}

自定义连接其他数据库

C# 全选
        IDatabase db_gSales = DatabaseProvider.GetDatabase(DBIDs.gSales);

三、DatabaseProvider类详解

https://www.cscode.net/archive/newdoc/254800607502341.html

开发数据访问层DAL | MiniFramework蝇量框架 | Winform框架|C/S开发框架

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


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