csharp: 用Enterprise Library对象实体绑定数据
2023-09-11 14:19:12 时间
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;
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; }
SAP CRM Application Extension Tool类型为Code List的扩展字段实现原理 When you create extension field via Application Extension Tool, it seems the code list ( or drop down list ) is not supported by this tool. This type does not appear in supported data type list.
重构——20将值对象改为引用对象(Change Value to Reference) 将值对象改为引用对象(Change Value to Reference):你从一个类衍生出许多彼此相等的实例,希望将它们替换为同一对象;将这个值对象变成引用对象
geovindu 读者是,读之者,者之读.一沙一世界! to be is to do举世皆清我独浊,众人皆醒我独醉.俺是农民工,程序员.
相关文章
- [PHP] 为JSON数据的API返回空数组或者空对象
- java判定数据(对象)类型
- 【HIBERNATE框架开发之五】HIBERNATE对象的三种状态&&SESSION的常用方法
- java判定数据(对象)类型
- node 父子进程传递对象
- 对象池在 .NET (Core)中的应用[3]: 扩展篇
- ABAP Memory Inspector 里对动态内存对象的内存消耗度量方式
- Java里的class对象 - class object
- 解读数仓中的数据对象及相关关系
- 习题 9.5 建立一个对象数组,内放5个学生的数据(学号、成绩),设立一个函数max,用指向对象的指针作函数参数,在max函数中找出5个学生中成绩最高者,并输出其学号。
- 习题 8.6 需要求3个长方柱的体积,请编一个基于对象的程序。数据成员包括length、width、height。要求用成员函数实现以下功能:
- 【Groovy】MOP 元对象协议与元编程 ( 方法委托 | 批量方法委托 )
- 【Android 内存优化】Android 工程中使用 libjpeg-turbo 压缩图片 ( 初始化压缩对象 | 打开文件 | 设置压缩参数 | 写入压缩图像数据 | 完成压缩 | 释放资源 )
- FormData 对象的使用
- 设计模式 ( 十八 ) 策略模式Strategy(对象行为型)
- java对象和json数据转换实现方式3-使用jackson实现
- 3.3.2 使用SequenceMatcher对象
- python del语句作用在变量上,而不是数据对象(常量)上
- 在DHTML中把整个文档的各个元素作为对象处理的技术是:()
- 开发过程是用对个简单的对象的多个简单的方法,来实现复杂的功能