Advertisement
Guest User

Untitled

a guest
Apr 27th, 2015
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.03 KB | None | 0 0
  1. IList<WebSite> wsl = new List<WebSite>();
  2. login1 l = new login1();
  3.  
  4. string q = "select Id, DomainUrl, IsApproved, Date from website where UserId = @UserId";
  5.  
  6. using (MySqlConnection con = new MySqlConnection(WebConfigurationManager.ConnectionStrings["MySqlConnectionString"].ToString()))
  7. {
  8. using (MySqlCommand cmd = new MySqlCommand(q, con))
  9. {
  10. cmd.Parameters.Add("@UserId", MySqlDbType.Int32).Value = userId;
  11. con.Open();
  12.  
  13. var reader = cmd.ExecuteReader();
  14. while (reader.Read())
  15. {
  16. var ws = new WebSite();
  17. ws.Id = reader.GetInt32("Id");
  18. ws.DomainUrl = reader.GetString("DomainUrl");
  19. ws.IsApproved = reader.GetBoolean("IsApproved");
  20. ws.User.Id = reader.GetInt32("UserId");
  21. ws.Date = reader.GetDateTime("Date");
  22. wsl.Add(ws);
  23. }
  24. reader.Close();
  25. return wsl;
  26. }
  27. }
  28.  
  29. private IDatabaseProvider _dbProvider; //initialized in ctor, etc.
  30. private IConnectionStringProvider _connectionStringProvider;
  31. private IWebSiteMapper _mapper; //the db schema may change, or you may need to map from other source
  32.  
  33. public IList<WebSite> GetWebSitesForUser(int userId)
  34. {
  35. var wsl = new List<WebSite>();
  36. var con = _dbProvider.GetNewConnection(); //returns IDbConnection
  37. var cmd = _dbProvider.GetWebSiteListQueryCommand(con, userId); //IDbCommand, and addParam goes there
  38.  
  39. conn.Open(); // no need of try/catch or using, as if this fails, no resources are leaked
  40. using (var reader = cmd.ExecuteReader(CommandBehavior.CloseConnection)) //close con on reader.Close
  41. {
  42. while (reader.Read())
  43. {
  44. wsl.Add(_mapper.CreateFromReader(reader));
  45. }
  46. }
  47.  
  48. return wsl;
  49. }
  50.  
  51. using (MySqlConnection con = Connect())
  52. {
  53. string q = "select Id, DomainUrl, IsApproved, Date from website where UserId = @UserId";
  54. using (MySqlCommand cmd = new MySqlCommand(q, con))
  55. {
  56. cmd.Parameters.Add("@UserId", MySqlDbType.Int32).Value = userId;
  57. con.Open();
  58.  
  59. IList<WebSite> wsl = new List<WebSite>();
  60. using(var reader = cmd.ExecuteReader()) {
  61. foreach (WebSite webSite in CreateWebSites(reader))
  62. {
  63. wsl.Add(webSite);
  64. }
  65. }
  66. return wsl;
  67. }
  68. }
  69.  
  70. private IEnumerable<WebSite> CreateWebSites(MySqlDataReader reader)
  71. {
  72. while (reader.Read())
  73. {
  74. yield CreateWebSite(reader);
  75. }
  76. }
  77.  
  78. private MySQLConnection Connect()
  79. {
  80. return new MySqlConnection(
  81. WebConfigurationManager.ConnectionStrings["MySqlConnectionString"].
  82. ToString());
  83. }
  84.  
  85. private WebSite CreateWebSite(Reader reader)
  86. {
  87. return WebSite.Builder().
  88. Id(reader.GetInt32("Id")).
  89. DomainUrl(reader.GetString("DomainUrl")).
  90. IsApproved(reader.GetBoolean("IsApproved")).
  91. User(reader.GetInt32("UserId"))
  92. Date(reader.GetDateTime("Date")).
  93. Build();
  94. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement