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

 

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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
/// <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;
 
        }

 http://www.codeproject.com/Articles/12035/Updating-a-DataSet-with-Multiple-Tables-using-Ente 

// Dbcommandwrapper
// Database myDatabase = DatabaseFactory.CreateDatabase();
// DBCommandWrapper myCommand = myDatabase.GetStoredProcCommandWrapper("sp_ConsignedItemsInsert");

posted @   ®Geovin Du Dream Park™  阅读(567)  评论(2编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
历史上的今天:
2013-07-23 -ms-zoom property
2013-07-23 jQuery:mouseover and Increase the Size of an Image
2011-07-23 SQL script 會計記賬 Debit-Credit Bookkeeping
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示