csharp: 用Enterprise Library对象实体绑定数据

简介:  Enterprise Library: https://msdn.microsoft.com/en-us/library/ff648951.aspx /// <summary> /// 是否存在该记录 /// </summary> /// <param name="ReportID"></


Enterprise Library: https://msdn.microsoft.com/en-us/library/ff648951.aspx

/// <summary>
        /// 是否存在该记录
        /// </summary>
        /// <param name="ReportID"></param>
        /// <returns></returns>
        public bool Exists(string ReportID)
        {
            Database db = DatabaseFactory.CreateDatabase();
            StringBuilder strSql = new StringBuilder();
            strSql.Append("select count(1) from BookPlaceList where BookPlaceID=@BookPlaceID ");
            DbCommand dbCommand = db.GetSqlStringCommand(strSql.ToString());
            db.AddInParameter(dbCommand, "BookPlaceID", DbType.AnsiString, ReportID);
            int cmdresult;
            object obj = db.ExecuteScalar(dbCommand);
            if ((Object.Equals(obj, null)) || (Object.Equals(obj, System.DBNull.Value)))
            {
                cmdresult = 0;
            }
            else
            {
                cmdresult = int.Parse(obj.ToString());
            }
            if (cmdresult == 0)
            {
                return false;
            }
            else
            {
                return true;
            }
        }
        /// <summary>
        /// 增加一条数据
        /// </summary>
        /// <param name="model"></param>
        public int Add(BookPlaceListInfo model)
        {
            int i=0;
            StringBuilder strSql = new StringBuilder();
            strSql.Append("insert into BookPlaceList(");
            strSql.Append("BookPlaceName,BookPlaceCode,BookPlaceParent)");
            strSql.Append(" values (");
            strSql.Append("@BookPlaceName,@BookPlaceCode,@BookPlaceParent)");
            Database db = DatabaseFactory.CreateDatabase();
            DbCommand dbCommand = db.GetSqlStringCommand(strSql.ToString());
            db.AddInParameter(dbCommand, "BookPlaceName", DbType.String, model.BookPlaceName);
            db.AddInParameter(dbCommand, "BookPlaceCode", DbType.String, model.BookPlaceCode);
            db.AddInParameter(dbCommand, "BookPlaceParent", DbType.Int32, model.BookPlaceParent);
            i=db.ExecuteNonQuery(dbCommand);
            return i;
        }
        /// <summary>
        /// 更新一条数据
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public int Update(BookPlaceListInfo model)
        {
            int i = 0;
            StringBuilder strSql = new StringBuilder();
            strSql.Append("update BookPlaceList set ");
            strSql.Append("BookPlaceName=@BookPlaceName,");
            strSql.Append("BookPlaceCode=@BookPlaceCode,");
            strSql.Append("BookPlaceParent=@BookPlaceParent,");
            strSql.Append(" where BookPlaceID=@BookPlaceID ");
            Database db = DatabaseFactory.CreateDatabase();
            DbCommand dbCommand = db.GetSqlStringCommand(strSql.ToString());
            db.AddInParameter(dbCommand, "BookPlaceID", DbType.Int32, model.BookPlaceID);
            db.AddInParameter(dbCommand, "BookPlaceName", DbType.String, model.BookPlaceName);
            db.AddInParameter(dbCommand, "BookPlaceCode", DbType.String, model.BookPlaceCode);
            db.AddInParameter(dbCommand, "BookPlaceParent", DbType.Int32, model.BookPlaceParent);
            i= db.ExecuteNonQuery(dbCommand);
            return i;
        }
 
 
        /// <summary>
        ///
        /// </summary>
        /// <param name="ReportID"></param>
        /// <returns></returns>
        public int Delete(string ReportID)
        {
            int i = 0;
            StringBuilder strSql = new StringBuilder();
            strSql.Append("delete BookPlaceList ");
            strSql.Append(" where bookPlaceID=@bookPlaceID ");
            Database db = DatabaseFactory.CreateDatabase();
            DbCommand dbCommand = db.GetSqlStringCommand(strSql.ToString());
            db.AddInParameter(dbCommand, "bookPlaceID", DbType.AnsiString, ReportID);
            i=db.ExecuteNonQuery(dbCommand);
 
            return i;
 
        }
        /// <summary>
        /// 获得数据列表
        /// </summary>
        /// <param name="strWhere"></param>
        /// <returns></returns>
        public DataSet GetList(string strWhere)
        {
            StringBuilder strSql = new StringBuilder();
            strSql.Append("select * ");
            strSql.Append(" FROM BookPlaceList ");
            if (strWhere.Trim() != "")
            {
                strSql.Append(" where " + strWhere);
            }
            Database db = DatabaseFactory.CreateDatabase();
            return db.ExecuteDataSet(CommandType.Text, strSql.ToString());
        }
        /// <summary>
        /// 获得数据列表(比DataSet效率高,推荐使用)
        /// using Microsoft.Practices.EnterpriseLibrary.Data;
        ///using Microsoft.Practices.EnterpriseLibrary.Data.Sql;
        /// </summary>
        /// <param name="strWhere"></param>
        /// <returns></returns>
        public List<BookPlaceListInfo> GetListArray(string strWhere)
        {
            StringBuilder strSql = new StringBuilder();
            strSql.Append("select * ");
            strSql.Append(" FROM BookPlaceList ");
            if (strWhere.Trim() != "")
            {
                strSql.Append(" where " + strWhere);
            }
            List<BookPlaceListInfo> list = new List<BookPlaceListInfo>();
            Database db = DatabaseFactory.CreateDatabase();
            using (IDataReader dataReader = db.ExecuteReader(CommandType.Text, strSql.ToString()))
            {
                while (dataReader.Read())
                {
                    list.Add(ReaderBind(dataReader));
                }
            }
            return list;
        }
 
        /// <summary>
        /// 得到一个对象实体
        /// </summary>
        public BookPlaceListInfo GetModel(string bookPlaceID)
        {
 
            StringBuilder strSql = new StringBuilder();
            strSql.Append("select * from BookPlaceList ");
            strSql.Append(" where bookPlaceID=@bookPlaceID ");
            Database db = DatabaseFactory.CreateDatabase();
            DbCommand dbCommand = db.GetSqlStringCommand(strSql.ToString());
            db.AddInParameter(dbCommand, "bookPlaceID", DbType.AnsiString, bookPlaceID);
            BookPlaceListInfo model = null;
            using (IDataReader dataReader = db.ExecuteReader(dbCommand))
            {
                if (dataReader.Read())
                {
                    model = ReaderBind(dataReader);
                }
            }
            return model;
        }
 
        /// <summary>
        /// 对象实体绑定数据
        /// </summary>
        /// <param name="dataReader"></param>
        /// <returns></returns>
        private BookPlaceListInfo ReaderBind(IDataReader dataReader)
        {
            BookPlaceListInfo bookPlaceList = new BookPlaceListInfo();
            //1.
            //object ojb;
            //ojb = dataReader["BookPlaceID"];
            //if (ojb != null && ojb != DBNull.Value)
            //{
            //    bookPlaceList.BookPlaceID = (int)ojb;
            //}
            //ojb = dataReader["BookPlaceName"];
            //if (ojb != null && ojb != DBNull.Value)
            //{
            //    bookPlaceList.BookPlaceName = (string)ojb;
            //}
            //2.
            bookPlaceList.BookPlaceID = (!object.Equals(dataReader["BookPlaceID"], null)) ? (int)dataReader["BookPlaceID"] : 0;
            bookPlaceList.BookPlaceName = (!object.Equals(dataReader["BookPlaceName"], null)) ? (string)dataReader["BookPlaceName"] : "";
            bookPlaceList.BookPlaceCode = (!object.Equals(dataReader["BookPlaceCode"], null)) ? (string)dataReader["BookPlaceCode"] : "";
            bookPlaceList.BookPlaceParent = (!object.Equals(dataReader["BookPlaceParent"], null)) ? (int)dataReader["BookPlaceParent"] : 0;
 
            return bookPlaceList;
 
        }

目录
相关文章
|
人工智能 自然语言处理
离颠覆好莱坞又近了一步!Pika推出Lip Sync(口型同步)
【2月更文挑战第13天】离颠覆好莱坞又近了一步!Pika推出Lip Sync(口型同步)
425 1
离颠覆好莱坞又近了一步!Pika推出Lip Sync(口型同步)
|
10月前
|
弹性计算 缓存 运维
云服务诊断工具使用评测
云服务诊断工具显著提升了云资源管理效率。其健康状态功能可快速检测ECS实例的CPU、内存、磁盘等资源使用情况,帮助优化和预警;一键诊断功能则能迅速定位并解决业务系统异常,如防火墙规则错误等问题。该工具界面直观、自动化程度高且实时性强,极大减少了人工分析工作量。尽管在复杂场景下的诊断能力和功能整合上仍有提升空间,但整体表现优异,节省了30%-40%的时间成本,值得推荐。
232 17
|
11月前
|
人工智能 自然语言处理 前端开发
CodeArena:在线 LLM 编程竞技场!用于测试不同开源 LLM 的编程能力,实时更新排行榜
CodeArena 是一个在线平台,用于测试和比较不同大型语言模型(LLM)的编程能力。通过实时显示多个 LLM 的代码生成过程和结果,帮助开发者选择适合的 LLM,并推动 LLM 技术的发展。
288 7
CodeArena:在线 LLM 编程竞技场!用于测试不同开源 LLM 的编程能力,实时更新排行榜
|
11月前
|
人工智能 搜索推荐 安全
智能家居:AI如何让我们的生活更便捷
智能家居:AI如何让我们的生活更便捷
541 7
|
人工智能 安全 搜索推荐
|
监控 Kubernetes 安全
Istio整体架构解析
【7月更文挑战第17天】Istio整体架构分为数据平面(Data Plane)和控制平面(Control Plane)两部分
|
机器学习/深度学习 存储 数据采集
售后服务系统大比拼:热门选择与功能对比
售后服务系统是提升客户满意度和品牌忠诚度的关键。Zoho Desk是一款推荐的系统,因其高性价比、多渠道支持、工单管理、自动化工作流、知识库、客户满意度调查等功能受到青睐,适合不同规模的企业。它还提供数据分析和报告,帮助企业改进服务。其他知名系统如Zendesk、Freshdesk和Salesforce Service Cloud各有特点,但Zoho Desk的易用性和价格优势使其成为理想选项。
349 1
|
Oracle 关系型数据库 数据库连接
初步了解Oracle DG
初步了解Oracle DG
692 0
|
JSON 网络协议 API
Caddy- 用 Go 写的新一代可扩展 WebServer
Caddy- 用 Go 写的新一代可扩展 WebServer
|
机器学习/深度学习 人工智能 自动驾驶
厉害了我的 AI:在看了上千部电影后,这个人工智能竟能帮你识别电影明星
目前 AI(人工智能)的前沿研究是关于大脑启发的人工神经网络,而这一技术已经被应用于无人驾驶的情况下让汽车减速,并且在几十种语言之间的即时翻译和医学诊断方面都有应用。
1503 0
厉害了我的 AI:在看了上千部电影后,这个人工智能竟能帮你识别电影明星

热门文章

最新文章