/EQT_V1/EQT.DAL/DaUserRole.auto.cs

http://sgsoft-las.googlecode.com/ · C# · 989 lines · 786 code · 86 blank · 117 comment · 22 complexity · 1ee7771efa4edec2ebbf5a8643b45dcc MD5 · raw file

  1. #region DaUserRole
  2. /*----------------------------------------------------------------
  3. // ????DaUserRole.cs
  4. // ??????UserRole??????
  5. //
  6. //
  7. // ?????2009-02-27
  8. //
  9. // ?????
  10. // ?????
  11. //----------------------------------------------------------------*/
  12. using System;
  13. using System.Collections;
  14. using System.Collections.Generic;
  15. using System.Data;
  16. using System.Globalization;
  17. using System.Text;
  18. using System.Xml;
  19. using System.Data.Common;
  20. using Microsoft.Practices.EnterpriseLibrary.Data;
  21. using Microsoft.Practices.EnterpriseLibrary.Data.Sql;
  22. //using Microsoft.Practices.EnterpriseLibrary.Logging;
  23. using EQT.Model;
  24. //using IDataLayer;
  25. namespace EQT.Dal
  26. {
  27. public partial class DaUserRole //?????????,IUserRole
  28. {
  29. //???????????????????
  30. //???????????????SQL Server??????????????????ID??????entiry?
  31. //??????????????????
  32. #region SQL const
  33. private const string SQL_INSERT="INSERT INTO User_Role (UID ,Role_ID ) VALUES "
  34. +"(@Uid,@Role_Id)";
  35. private const string SQL_UPDATE="UPDATE User_Role SET WHERE UID=@UID AND Role_ID=@Role_ID";
  36. private const string SQL_DELETE="DELETE FROM User_Role WHERE UID=@UID AND Role_ID=@Role_ID";
  37. private const string SQL_SELECT="SELECT UID ,Role_ID from User_Role ";
  38. private const string SQL_SELECT_ONE="SELECT UID ,Role_ID from User_Role WHERE UID=@UID AND Role_ID=@Role_ID";
  39. #endregion
  40. private Database db;
  41. #region Constructor
  42. /// <summary>
  43. /// ???????????????????????
  44. /// </summary>
  45. public DaUserRole ()
  46. {
  47. db=DatabaseFactory.CreateDatabase();
  48. }
  49. /// <summary>
  50. /// ?????databaseName??????
  51. /// </summary>
  52. /// <param name="databaseName">??????????????</param>
  53. public DaUserRole (string databaseName)
  54. {
  55. this.db = DatabaseFactory.CreateDatabase(databaseName);
  56. }
  57. public DaUserRole (Database db)
  58. {
  59. this.db = db;
  60. }
  61. #endregion
  62. //???CRUD??????????????????
  63. #region Add
  64. ///build the command object.It never throw exception.
  65. private DbCommand ConstructAddCommand()
  66. {
  67. DbCommand dbCommand = db.GetSqlStringCommand(SQL_INSERT);
  68. //????:Uid
  69. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString);
  70. //????:Role_Id
  71. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString);
  72. return dbCommand;
  73. }
  74. private DbCommand ConstructAddCommand(MoUserRole entity)
  75. {
  76. DbCommand dbCommand=db.GetSqlStringCommand(SQL_INSERT);
  77. //????:Uid
  78. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString,entity.Uid);
  79. //????:Role_Id
  80. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString,entity.Role_Id);
  81. return dbCommand;
  82. }
  83. /// <summary>
  84. ///????????????????commit
  85. /// </summary>
  86. public int Add(MoUserRole entity,DbTransaction trans)
  87. { try
  88. {
  89. DbCommand dbCommand=ConstructAddCommand(entity);
  90. return db.ExecuteNonQuery(dbCommand,trans);
  91. }
  92. catch(DbException ex)
  93. {
  94. HandleDbException(ex,entity);
  95. }
  96. return 0;
  97. }
  98. public int Add(MoUserRole entity)
  99. {
  100. try
  101. {
  102. DbCommand dbCommand=ConstructAddCommand(entity);
  103. return db.ExecuteNonQuery(dbCommand);
  104. }
  105. catch(DbException ex)
  106. {
  107. HandleDbException(ex,entity);
  108. }
  109. return 0;
  110. }
  111. public int Add(List<MoUserRole> entity,DbTransaction trans)
  112. {
  113. int rc=0;
  114. DbCommand dbCommand=ConstructAddCommand();
  115. int j=0;
  116. try
  117. {
  118. for(j=0;j<entity.Count;j++)
  119. {
  120. //????:Uid
  121. db.SetParameterValue(dbCommand,"Uid",entity[j].Uid);
  122. //????:Role_Id
  123. db.SetParameterValue(dbCommand,"Role_Id",entity[j].Role_Id);
  124. rc+=db.ExecuteNonQuery(dbCommand,trans);
  125. }
  126. }
  127. catch(DbException ex)
  128. {
  129. HandleDbException(ex,entity[j]);
  130. }
  131. return rc;
  132. }
  133. public int Add(List<MoUserRole> entity)
  134. {
  135. int rc = 0;
  136. using (DbConnection cnn = db.CreateConnection())
  137. {
  138. DbTransaction trans=null;
  139. try
  140. {
  141. cnn.Open();
  142. using(trans = cnn.BeginTransaction())
  143. {
  144. rc=Add(entity,trans);//This function throw customer exception.
  145. trans.Commit();
  146. }
  147. cnn.Close();
  148. }
  149. catch(DbException ex)
  150. {
  151. if(trans!=null)trans.Rollback();
  152. HandleDbException(ex);
  153. }
  154. ///TODO:catch customer exception.
  155. //catch
  156. //{
  157. //
  158. //}
  159. }
  160. return rc;
  161. }
  162. public int Add(DataTable dt, DbTransaction trans)
  163. {
  164. int rc=0;
  165. DbCommand dbCommand =ConstructAddCommand();
  166. int j=0;
  167. try
  168. {
  169. for(j=0;j<dt.Rows.Count;j++)
  170. {
  171. //????:Uid
  172. db.SetParameterValue(dbCommand,"Uid",dt.Rows[j]["Uid"]);
  173. //????:Role_Id
  174. db.SetParameterValue(dbCommand,"Role_Id",dt.Rows[j]["Role_Id"]);
  175. rc+=db.ExecuteNonQuery(dbCommand,trans);
  176. }
  177. }
  178. catch(DbException ex)
  179. {
  180. HandleDbException(ex,dt.Rows[j]);
  181. }
  182. return rc;
  183. }
  184. public int Add(DataTable dt)
  185. {
  186. int rc=0;
  187. using (DbConnection cnn = db.CreateConnection())
  188. {
  189. DbTransaction trans=null;
  190. try
  191. {
  192. cnn.Open();
  193. using(trans = cnn.BeginTransaction())
  194. {
  195. rc = Add(dt, trans);
  196. trans.Commit();
  197. cnn.Close();
  198. }
  199. }
  200. catch(DbException ex)
  201. {
  202. if(trans!=null)trans.Rollback();
  203. HandleDbException(ex);
  204. }
  205. ///TODO:catch customer exception.
  206. //catch
  207. //{
  208. //
  209. //}
  210. }
  211. return rc;
  212. }
  213. #endregion
  214. #region Update
  215. private DbCommand ConstructUpdateCommand()
  216. {
  217. DbCommand dbCommand=db.GetSqlStringCommand(SQL_UPDATE);
  218. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString);
  219. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString);
  220. return dbCommand;
  221. }
  222. private DbCommand ConstructUpdateCommand(MoUserRole entity)
  223. {
  224. DbCommand dbCommand=db.GetSqlStringCommand(SQL_UPDATE);
  225. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString,entity.Uid);
  226. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString,entity.Role_Id);
  227. return dbCommand;
  228. }
  229. /// <summary>
  230. /// ???????????:??????????
  231. /// </summary>
  232. public int Update(MoUserRole entity,DbTransaction trans)
  233. {
  234. try
  235. {
  236. DbCommand dbCommand=ConstructUpdateCommand(entity);
  237. return db.ExecuteNonQuery(dbCommand,trans);
  238. }
  239. catch(DbException ex)
  240. {
  241. HandleDbException(ex,entity);
  242. }
  243. return 0;
  244. }
  245. public int Update(MoUserRole entity)
  246. {
  247. try
  248. {
  249. DbCommand dbCommand=ConstructUpdateCommand(entity);
  250. return db.ExecuteNonQuery(dbCommand);
  251. }
  252. catch(DbException ex)
  253. {
  254. HandleDbException(ex,entity);
  255. }
  256. return 0;
  257. }
  258. public int Update(List<MoUserRole> entity,DbTransaction trans)
  259. {
  260. int rc=0;
  261. DbCommand dbCommand=ConstructUpdateCommand();
  262. int j=0;
  263. try
  264. {
  265. for(j=0;j<entity.Count;j++)
  266. {
  267. db.SetParameterValue(dbCommand,"Uid",entity[j].Uid);
  268. db.SetParameterValue(dbCommand,"Role_Id",entity[j].Role_Id);
  269. rc+=db.ExecuteNonQuery(dbCommand,trans);
  270. }
  271. }
  272. catch(DbException ex)
  273. {
  274. HandleDbException(ex,entity[j]);
  275. }
  276. return rc;
  277. }
  278. public int Update(List<MoUserRole> entity)
  279. {
  280. int rc = 0;
  281. using (DbConnection cnn = db.CreateConnection())
  282. {
  283. DbTransaction trans=null;
  284. try
  285. {
  286. cnn.Open();
  287. using(trans = cnn.BeginTransaction())
  288. {
  289. rc=Update(entity,trans);
  290. trans.Commit();
  291. }
  292. cnn.Close();
  293. }
  294. catch(DbException ex)
  295. {
  296. if(trans!=null)trans.Rollback();
  297. HandleDbException(ex);
  298. }
  299. }
  300. return rc;
  301. }
  302. public int Update(DataTable dt, DbTransaction trans)
  303. {
  304. int rc=0;
  305. DbCommand dbCommand=ConstructUpdateCommand();
  306. int j=0;
  307. try
  308. {
  309. for(j=0;j<dt.Rows.Count;j++)
  310. {
  311. db.SetParameterValue(dbCommand,"Uid",dt.Rows[j]["Uid"]);
  312. db.SetParameterValue(dbCommand,"Role_Id",dt.Rows[j]["Role_Id"]);
  313. rc+=db.ExecuteNonQuery(dbCommand,trans);
  314. }
  315. }
  316. catch(DbException ex)
  317. {
  318. HandleDbException(ex,dt.Rows[j]);
  319. }
  320. return rc;
  321. }
  322. public int Update(DataTable dt)
  323. {
  324. if(dt==null ||dt.Rows.Count==0) return 0;
  325. int rc=0;
  326. using (DbConnection cnn = db.CreateConnection())
  327. {
  328. DbTransaction trans=null;
  329. try
  330. {
  331. cnn.Open();
  332. using(trans = cnn.BeginTransaction())
  333. {
  334. rc = Add(dt, trans);
  335. trans.Commit();
  336. }
  337. cnn.Close();
  338. }
  339. catch(DbException ex)
  340. {
  341. if(trans!=null)trans.Rollback();
  342. HandleDbException(ex);
  343. }
  344. }
  345. return rc;
  346. }
  347. #endregion
  348. #region Update By DataSet
  349. private void PrepareDataAdapterCommand(out DbCommand dbInsertCommand,
  350. out DbCommand dbUpdateCommand,out DbCommand dbDeleteCommand)
  351. {
  352. dbInsertCommand = db.GetSqlStringCommand(SQL_INSERT);
  353. #region set insert cmd parameters
  354. db.AddInParameter(dbInsertCommand, "Uid",DbType.AnsiString, "Uid", DataRowVersion.Current);
  355. db.AddInParameter(dbInsertCommand, "Role_Id",DbType.AnsiString, "Role_Id", DataRowVersion.Current);
  356. #endregion
  357. dbUpdateCommand = db.GetSqlStringCommand(SQL_UPDATE);
  358. #region Set update cmd value parameters
  359. #endregion
  360. #region set update cmd pk where parameters
  361. db.AddInParameter(dbUpdateCommand, "Uid", DbType.AnsiString, "Uid", DataRowVersion.Current);
  362. db.AddInParameter(dbUpdateCommand, "Role_Id", DbType.AnsiString, "Role_Id", DataRowVersion.Current);
  363. #endregion
  364. dbDeleteCommand = db.GetSqlStringCommand(SQL_DELETE);
  365. #region set delete cmd pk where parameters
  366. db.AddInParameter(dbDeleteCommand, "Uid", DbType.AnsiString, "Uid", DataRowVersion.Current);
  367. db.AddInParameter(dbDeleteCommand, "Role_Id", DbType.AnsiString, "Role_Id", DataRowVersion.Current);
  368. #endregion
  369. }
  370. /// <summary>
  371. /// ??DataSet??????????
  372. /// </summary>
  373. public int UpdateByDataSet(DataSet dst, string strTableName, DbTransaction trans)
  374. {
  375. DbCommand dbInsertCommand = null;
  376. DbCommand dbUpdateCommand = null;
  377. DbCommand dbDeleteCommand = null;
  378. PrepareDataAdapterCommand(out dbInsertCommand,out dbUpdateCommand,out dbDeleteCommand);
  379. try
  380. {
  381. return db.UpdateDataSet(dst, strTableName, dbInsertCommand, dbUpdateCommand, dbDeleteCommand, trans);
  382. }
  383. catch(DbException ex)
  384. {
  385. trans.Rollback();
  386. HandleDbException(ex);
  387. }
  388. return 0;//TODO:Should return Application Specific Error Code.
  389. }
  390. /// <summary>
  391. /// ??DataSet???????????
  392. /// </summary>
  393. public int UpdateByDataSet(DataSet dst, string strTableName)
  394. {
  395. DbCommand dbInsertCommand = null;
  396. DbCommand dbUpdateCommand = null;
  397. DbCommand dbDeleteCommand = null;
  398. PrepareDataAdapterCommand(out dbInsertCommand,out dbUpdateCommand,out dbDeleteCommand);
  399. try
  400. {
  401. return db.UpdateDataSet(dst, strTableName, dbInsertCommand, dbUpdateCommand, dbDeleteCommand, UpdateBehavior.Transactional);
  402. }
  403. catch(DbException ex)
  404. {
  405. HandleDbException(ex);
  406. }
  407. return 0;//TODO:Should return Application Specific Error Code.
  408. }
  409. #endregion
  410. #region Delete
  411. private DbCommand ConstructDeleteCommand()
  412. {
  413. DbCommand dbCommand=db.GetSqlStringCommand(SQL_DELETE);
  414. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString);
  415. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString);
  416. return dbCommand;
  417. }
  418. private DbCommand ConstructDeleteCommand(MoUserRole entity)
  419. {
  420. DbCommand dbCommand=db.GetSqlStringCommand(SQL_DELETE);
  421. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString,entity.Uid);
  422. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString,entity.Role_Id);
  423. return dbCommand;
  424. }
  425. /// <summary>
  426. /// delete by pk(entity)
  427. /// </summary>
  428. public int Delete(MoUserRole entity,DbTransaction trans)
  429. { try
  430. {
  431. DbCommand dbCommand=ConstructDeleteCommand(entity);
  432. return db.ExecuteNonQuery(dbCommand,trans);
  433. }
  434. catch(DbException ex)
  435. {
  436. trans.Rollback();
  437. HandleDbException(ex,entity);
  438. }
  439. return 0;
  440. }
  441. public int Delete(MoUserRole entity)
  442. {
  443. try
  444. {
  445. DbCommand dbCommand=ConstructDeleteCommand(entity);
  446. return db.ExecuteNonQuery(dbCommand);
  447. }
  448. catch(DbException ex)
  449. {
  450. HandleDbException(ex,entity);
  451. }
  452. return 0;
  453. }
  454. /// <summary>
  455. /// mul-delete
  456. /// </summary>
  457. public int Delete(List<MoUserRole> entities,DbTransaction trans)
  458. {
  459. int rc=0;
  460. int j=0;
  461. DbCommand dbCommand=ConstructDeleteCommand();
  462. try
  463. {
  464. for(j=0;j<entities.Count;j++)
  465. {
  466. db.SetParameterValue(dbCommand,"Uid",entities[j].Uid);
  467. db.SetParameterValue(dbCommand,"Role_Id",entities[j].Role_Id);
  468. rc+=db.ExecuteNonQuery(dbCommand,trans);
  469. }
  470. }
  471. catch(DbException ex)
  472. {
  473. if(trans!=null)trans.Rollback();
  474. HandleDbException(ex,entities[j]);
  475. }
  476. return rc;
  477. }
  478. public int Delete(List<MoUserRole> entities)
  479. {
  480. int rc = 0;
  481. using (DbConnection cnn = db.CreateConnection())
  482. {
  483. DbTransaction trans=null;
  484. try
  485. {
  486. cnn.Open();
  487. using(trans = cnn.BeginTransaction())
  488. {
  489. rc=Delete(entities,trans);
  490. trans.Commit();
  491. }
  492. cnn.Close();
  493. }
  494. catch(DbException ex)
  495. {
  496. if(trans!=null)trans.Rollback();
  497. HandleDbException(ex);
  498. }
  499. }
  500. return rc;
  501. }
  502. public int Delete(DataTable dt,DbTransaction trans)
  503. {
  504. int rc=0;
  505. int j=0;
  506. DbCommand dbCommand=ConstructDeleteCommand();
  507. try
  508. {
  509. for(j=0;j<dt.Rows.Count;j++)
  510. {
  511. db.SetParameterValue(dbCommand,"Uid",dt.Rows[j]["Uid"]);
  512. db.SetParameterValue(dbCommand,"Role_Id",dt.Rows[j]["Role_Id"]);
  513. rc+=db.ExecuteNonQuery(dbCommand,trans);
  514. }
  515. }
  516. catch(DbException ex)
  517. {
  518. if(trans!=null)trans.Rollback();
  519. HandleDbException(ex,dt.Rows[j]);
  520. }
  521. return rc;
  522. }
  523. public int Delete(DataTable dt)
  524. {
  525. int rc=0;
  526. using (DbConnection cnn = db.CreateConnection())
  527. {
  528. DbTransaction trans=null;
  529. try
  530. {
  531. cnn.Open();
  532. using(trans = cnn.BeginTransaction())
  533. {
  534. rc = Delete(dt, trans);
  535. trans.Commit();
  536. }
  537. cnn.Close();
  538. }
  539. catch(DbException ex)
  540. {
  541. if(trans!=null)trans.Rollback();
  542. HandleDbException(ex);
  543. }
  544. }
  545. return rc;
  546. }
  547. /// <summary>
  548. /// ??????????
  549. /// </summary>
  550. public int Delete(string Uid,string Role_Id,DbTransaction trans)
  551. {
  552. try
  553. {
  554. DbCommand dbCommand=db.GetSqlStringCommand(SQL_DELETE);
  555. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString,Uid);
  556. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString,Role_Id);
  557. return db.ExecuteNonQuery(dbCommand,trans);
  558. }
  559. catch(DbException ex)
  560. {
  561. if(trans!=null)trans.Rollback();
  562. HandleDbException(ex);
  563. }
  564. return 0;
  565. }
  566. public int Delete(string Uid,string Role_Id)
  567. {
  568. try
  569. {
  570. DbCommand dbCommand=db.GetSqlStringCommand(SQL_DELETE);
  571. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString,Uid);
  572. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString,Role_Id);
  573. return db.ExecuteNonQuery(dbCommand);
  574. }
  575. catch(DbException ex)
  576. {
  577. HandleDbException(ex);
  578. }
  579. return -1;
  580. }
  581. #endregion
  582. #region Query All by condition
  583. /// <summary>
  584. /// ????WHERE????????,?condition????????
  585. /// </summary>
  586. public DataSet Query(string condition)
  587. {
  588. try
  589. {
  590. return db.ExecuteDataSet(CommandType.Text,String.IsNullOrEmpty(condition)?SQL_SELECT:SQL_SELECT+condition);
  591. }
  592. catch(DbException ex)
  593. {
  594. HandleDbException(ex);
  595. }
  596. return new DataSet();
  597. }
  598. public DataSet Query(string condition, DbTransaction trans)
  599. {
  600. try
  601. {
  602. return db.ExecuteDataSet(trans, CommandType.Text, String.IsNullOrEmpty(condition) ? SQL_SELECT : SQL_SELECT + condition);
  603. }
  604. catch(DbException ex)
  605. {
  606. HandleDbException(ex);
  607. }
  608. return new DataSet();
  609. }
  610. #endregion
  611. #region GetEntity(s)
  612. /// <summary>
  613. ///????????????
  614. /// </summary>
  615. public MoUserRole GetEntity(string mUid ,string mRole_Id )
  616. {
  617. MoUserRole entity = new MoUserRole();
  618. entity.Uid=mUid;
  619. entity.Role_Id=mRole_Id;
  620. if(GetEntityEx(entity))
  621. {
  622. return entity;
  623. }
  624. else
  625. {
  626. return null;
  627. }
  628. }
  629. public MoUserRole GetEntity(string mUid ,string mRole_Id ,DbTransaction trans)
  630. {
  631. MoUserRole entity = new MoUserRole();
  632. entity.Uid=mUid;
  633. entity.Role_Id=mRole_Id;
  634. if(GetEntityEx(entity,trans))
  635. {
  636. return entity;
  637. }
  638. else
  639. {
  640. return null;
  641. }
  642. }
  643. private DbCommand ConstructSelectOneCommand(Database db,MoUserRole entity)
  644. {
  645. DbCommand dbCommand=db.GetSqlStringCommand(SQL_SELECT_ONE);
  646. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString,entity.Uid);
  647. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString,entity.Role_Id);
  648. return dbCommand;
  649. }
  650. private DbCommand ConstructSelectOneCommand(Database db)
  651. {
  652. DbCommand dbCommand=db.GetSqlStringCommand(SQL_SELECT_ONE);
  653. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString);
  654. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString);
  655. return dbCommand;
  656. }
  657. private void PopulateEntityByDataReader(IDataReader reader,ref MoUserRole entity)
  658. {
  659. if (!reader.IsDBNull(0)) entity.Uid = reader.GetString(0);
  660. if (!reader.IsDBNull(1)) entity.Role_Id = reader.GetString(1);
  661. }
  662. /// <summary>
  663. ///????????????????????????????????.
  664. ///??????????????????????ref????
  665. /// </summary>
  666. public bool GetEntityEx(MoUserRole entity)
  667. {
  668. DbCommand dbCommand=ConstructSelectOneCommand(db,entity);
  669. try
  670. {
  671. using(IDataReader reader=db.ExecuteReader(dbCommand))
  672. {
  673. if(reader.Read())
  674. {
  675. PopulateEntityByDataReader(reader,ref entity);
  676. return true;
  677. }
  678. }
  679. }
  680. catch(DbException ex)
  681. {
  682. HandleDbException(ex,entity);
  683. }
  684. return false;
  685. }
  686. public bool GetEntityEx(MoUserRole entity,DbTransaction trans)
  687. {
  688. DbCommand dbCommand=ConstructSelectOneCommand(db,entity);
  689. try
  690. {
  691. using(IDataReader reader=db.ExecuteReader(dbCommand,trans))
  692. {
  693. if(reader.Read())
  694. {
  695. PopulateEntityByDataReader(reader,ref entity);
  696. return true;
  697. }
  698. }
  699. }
  700. catch(DbException ex)
  701. {
  702. trans.Rollback();
  703. HandleDbException(ex,entity);
  704. }
  705. return false;
  706. }
  707. public List<MoUserRole> GetEntities(string condition,DbTransaction trans)
  708. {
  709. List<MoUserRole> list=new List<MoUserRole>();
  710. try
  711. {
  712. using(IDataReader reader= db.ExecuteReader(trans,CommandType.Text, String.IsNullOrEmpty(condition) ? SQL_SELECT : SQL_SELECT+ condition))
  713. {
  714. while(reader.Read())
  715. {
  716. MoUserRole entity=new MoUserRole();
  717. PopulateEntityByDataReader(reader,ref entity);
  718. list.Add(entity);
  719. }
  720. }
  721. }
  722. catch(DbException ex)
  723. {
  724. trans.Rollback();
  725. HandleDbException(ex);
  726. }
  727. return list;
  728. }
  729. public List<MoUserRole> GetEntities(string condition)
  730. {
  731. List<MoUserRole> list=new List<MoUserRole>();
  732. try
  733. {
  734. using(IDataReader reader= db.ExecuteReader(CommandType.Text, String.IsNullOrEmpty(condition) ? SQL_SELECT : SQL_SELECT+" " + condition))
  735. {
  736. while(reader.Read())
  737. {
  738. MoUserRole entity=new MoUserRole();
  739. PopulateEntityByDataReader(reader,ref entity);
  740. list.Add(entity);
  741. }
  742. }
  743. }
  744. catch(DbException ex)
  745. {
  746. HandleDbException(ex);
  747. }
  748. return list;
  749. }
  750. #endregion
  751. #region Count
  752. /// <summary>
  753. /// ????????
  754. /// </summary>
  755. public int GetCount()
  756. {
  757. return Convert.ToInt32(db.ExecuteScalar(CommandType.Text,
  758. "SELECT COUNT(*) FROM User_Role "));
  759. }
  760. public int GetCount(DbTransaction trans)
  761. {
  762. try
  763. {
  764. return Convert.ToInt32(db.ExecuteScalar(trans,CommandType.Text,
  765. "SELECT COUNT(*) FROM User_Role "));
  766. }
  767. catch(DbException ex)
  768. {
  769. HandleDbException(ex);
  770. }
  771. return -1;
  772. }
  773. /// <summary>
  774. /// ????WHERE?????
  775. /// </summary>
  776. public int GetCount(string condition)
  777. {
  778. return Convert.ToInt32(db.ExecuteScalar(CommandType.Text,String.IsNullOrEmpty(condition)?
  779. "SELECT COUNT(*) FROM User_Role ":"SELECT COUNT(*) FROM User_Role "+condition ));
  780. }
  781. public int GetCount(string condition,DbTransaction trans)
  782. {
  783. try
  784. {
  785. return Convert.ToInt32(db.ExecuteScalar(trans,CommandType.Text,String.IsNullOrEmpty(condition)?
  786. "SELECT COUNT(*) FROM User_Role ":"SELECT COUNT(*) FROM User_Role "+condition ));
  787. }
  788. catch(DbException ex)
  789. {
  790. HandleDbException(ex);
  791. }
  792. return -1;
  793. }
  794. #endregion
  795. #region Check isExist
  796. /// <summary>
  797. /// ????????????
  798. /// </summary>
  799. public bool IsExist(string mUid ,string mRole_Id )
  800. {
  801. string sql="SELECT COUNT(*) FROM User_Role WHERE UID=@Uid and Role_ID=@Role_Id ";
  802. DbCommand dbCommand=db.GetSqlStringCommand(sql);
  803. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString,mUid);
  804. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString,mRole_Id);
  805. return Convert.ToInt32(db.ExecuteScalar(dbCommand))>0;
  806. }
  807. public bool IsExist(string mUid ,string mRole_Id ,DbTransaction trans)
  808. {
  809. string sql="select count(*) from User_Role where UID=@Uid and Role_ID=@Role_Id ";
  810. DbCommand dbCommand=db.GetSqlStringCommand(sql);
  811. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString,mUid);
  812. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString,mRole_Id);
  813. try
  814. {
  815. return Convert.ToInt32(db.ExecuteScalar(dbCommand,trans))>0;
  816. }
  817. catch
  818. {
  819. trans.Rollback();
  820. throw;
  821. }
  822. }
  823. public bool IsExist(MoUserRole entity,DbTransaction trans)
  824. {
  825. string sql="select count(*) from User_Role where UID=@Uid and Role_ID=@Role_Id ";
  826. DbCommand dbCommand=db.GetSqlStringCommand(sql);
  827. #region set pk where parameters
  828. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString,entity.Uid);
  829. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString,entity.Role_Id);
  830. #endregion
  831. try
  832. {
  833. return Convert.ToInt32(db.ExecuteScalar(dbCommand,trans))>0;
  834. }
  835. catch
  836. {
  837. trans.Rollback();
  838. throw;
  839. }
  840. }
  841. public bool IsExist(MoUserRole entity)
  842. {
  843. string sql="select count(*) from User_Role where UID=@Uid and Role_ID=@Role_Id ";
  844. DbCommand dbCommand=db.GetSqlStringCommand(sql);
  845. #region set pk where parameters
  846. db.AddInParameter(dbCommand,"Uid",DbType.AnsiString,entity.Uid);
  847. db.AddInParameter(dbCommand,"Role_Id",DbType.AnsiString,entity.Role_Id);
  848. #endregion
  849. return Convert.ToInt32(db.ExecuteScalar(dbCommand))>0;
  850. }
  851. #endregion
  852. #region Handle Exception
  853. private void HandleDbException(DbException ex)
  854. {
  855. //TODO:handle db exception.
  856. //Please throw application custom exception.
  857. throw ex;
  858. }
  859. private void HandleDbException(DbException ex, MoUserRole entity)
  860. {
  861. //NOTE:If you use SQL Server/Oracle/Db2... ,Please add the [internal static class ErrorCodes]
  862. //Use the ErrorCodes like below:
  863. //if (ex.Number == ErrorCodes.SqlUserRaisedError)
  864. //{
  865. // switch (ex.State)
  866. // {
  867. // case ErrorCodes.ValidationError:
  868. // string[] messageParts = ex.Errors[0].Message.Split(':');
  869. // throw new RepositoryValidationException(
  870. // mapper.MapDbParameterToBusinessEntityProperty(messageParts[0]),
  871. // messageParts[1], ex);
  872. // case ErrorCodes.ConcurrencyViolationError:
  873. // throw new ConcurrencyViolationException(ex.Message, ex);
  874. // }
  875. //}
  876. //TODO:Please contruct your customer Exception.
  877. //throw new RepositoryFailureException(ex);
  878. throw ex;
  879. }
  880. private void HandleDbException(DbException ex,DataRow entity)
  881. {
  882. //TODO:If you use SQL Server/Oracle/Db2... ,Please add the [internal static class ErrorCodes]
  883. //if (ex.Number == ErrorCodes.SqlUserRaisedError)
  884. //{
  885. // switch (ex.State)
  886. // {
  887. // case ErrorCodes.ValidationError:
  888. // string[] messageParts = ex.Errors[0].Message.Split(':');
  889. // throw new RepositoryValidationException(
  890. // mapper.MapDbParameterToBusinessEntityProperty(messageParts[0]),
  891. // messageParts[1], ex);
  892. // case ErrorCodes.ConcurrencyViolationError:
  893. // throw new ConcurrencyViolationException(ex.Message, ex);
  894. // }
  895. //}
  896. //TODO:Please contruct your customer Exception.
  897. //throw new RepositoryFailureException(ex);
  898. throw ex;
  899. }
  900. #endregion
  901. }
  902. }
  903. #endregion