We Recommend

Accelerated C# 2008 Accelerated C# 2008
This book is both a rapid tutorial and a permanent reference. You’ll quickly master C# syntax while learning how the CLR simplifies many programming tasks. You’ll also learn best practices that ensure your code will be efficient, reusable, and robust. Why spend months or years discovering the best ways to design and code C# when this book will show you how to do things the right way, right from the start?


Posted By

krisdb on 04/01/08


Tagged

c -sharp


Versions (?)


DataAccess


Published in: C# 


  1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Data;
  5. using System.Collections.Specialized;
  6. using System.Data.SqlClient;
  7. using System.Configuration;
  8.  
  9. DataAddUpdateDelete.Data_Insert(Convert.ToInt32(strGrantXMLID),
  10. strGrantName,
  11. strOrganization,
  12. dtYear,
  13. dAmount,
  14. intDuration,
  15. strPrimaryNTEE,
  16. strSpecificNTEE,
  17. strAddress1 + " " + strAddress2,
  18. strCity,
  19. strState,
  20. strZipCode,
  21. strPhone,
  22. "0",
  23. System.DateTime.Now,
  24. "0",
  25. System.DateTime.Now);
  26.  
  27.  
  28. namespace DataAccess
  29. {
  30. public static class DataSelection
  31. {
  32.  
  33. /// <summary>
  34. /// Executes a stored procedure anda returns a datatable
  35. /// </summary>
  36. /// <param name="sp">This must be a stored procedure</param>
  37. /// <returns>Data Table</returns>
  38. public static DataTable ReturnDataTable(string sp)
  39. {
  40. return ReturnDataTable(sp, null);
  41. }
  42.  
  43. /// <summary>
  44. /// Executes a stored procedure anda returns a datatable
  45. /// </summary>
  46. /// <param name="sp">This must be a stored procedure</param>
  47. /// <param name="Parameters">parameters to pass to stored procedure</param>
  48. /// <returns>Data Table</returns>
  49. public static DataTable ReturnDataTable(string sp, ListDictionary Parameters)
  50. {
  51. SqlConnection cnDBConn = new SqlConnection(ConfigurationSettings.AppSettings["DBConn"]);
  52. SqlCommand cmdSPCommand = new SqlCommand();
  53.  
  54. try
  55. {
  56. cnDBConn.Open();
  57. cmdSPCommand.Connection = cnDBConn;
  58.  
  59. cmdSPCommand.CommandText = sp;
  60. cmdSPCommand.CommandType = CommandType.StoredProcedure;
  61. IDataParameter p;
  62.  
  63. if (Parameters != null)
  64. {
  65. foreach (System.Collections.DictionaryEntry param in Parameters)
  66. {
  67. p = param.Key as IDataParameter;
  68.  
  69. if (null == p)
  70. {
  71. p.ParameterName = (string)param.Key;
  72. p.Value = param.Value;
  73. }
  74. else
  75. {
  76. p.Value = param.Value;
  77. }
  78.  
  79. cmdSPCommand.Parameters.Add(p);
  80. }
  81. }
  82. SqlDataAdapter daAdapter = new SqlDataAdapter(cmdSPCommand);
  83.  
  84. DataTable dt = new DataTable();
  85. daAdapter.Fill(dt);
  86.  
  87. return dt;
  88. }
  89. catch (Exception ex)
  90. {
  91. throw ex;
  92. }
  93. finally
  94. {
  95. if (cnDBConn.State == ConnectionState.Open)
  96. cnDBConn.Close();
  97. }
  98.  
  99. }
  100. }
  101.  
  102.  
  103. /// <summary>
  104. /// This class contains all insert stored procedures
  105. /// </summary>
  106. public static class DataAddUpdateDelete
  107. {
  108.  
  109. public static void Data_Insert(int GrantID,
  110. string Grant_Name,
  111. string Organization,
  112. DateTime Year,
  113. decimal Amount,
  114. int Duration,
  115. string Primary_NTEE,
  116. string Specific_NTEE,
  117. string Address,
  118. string City,
  119. string State,
  120. string Zipcode,
  121. string Phone,
  122. string CreatedBy,
  123. DateTime CreatedDate,
  124. string ModifiedBy,
  125. DateTime ModifiedDate
  126. )
  127. {
  128. ListDictionary parameters = new ListDictionary();
  129.  
  130. parameters.Add(new SqlParameter("@GrantID", SqlDbType.Int, 0), GrantID);
  131. parameters.Add(new SqlParameter("@Grant_Name", SqlDbType.NVarChar, 128), Grant_Name);
  132. parameters.Add(new SqlParameter("@Organization", SqlDbType.NVarChar, 128), Organization);
  133. parameters.Add(new SqlParameter("@Year", SqlDbType.DateTime, 0), Year);
  134. parameters.Add(new SqlParameter("@Amount", SqlDbType.Money, 0), Amount);
  135. parameters.Add(new SqlParameter("@Duration", SqlDbType.Int, 0), Duration);
  136. parameters.Add(new SqlParameter("@Primary_NTEE", SqlDbType.NVarChar, 512), Primary_NTEE);
  137. parameters.Add(new SqlParameter("@Specific_NTEE", SqlDbType.NVarChar, 512), Specific_NTEE);
  138. parameters.Add(new SqlParameter("@Address", SqlDbType.NVarChar, 512), Address);
  139. parameters.Add(new SqlParameter("@City", SqlDbType.NVarChar, 128), City);
  140. parameters.Add(new SqlParameter("@State", SqlDbType.NVarChar, 64), State);
  141. parameters.Add(new SqlParameter("@Zipcode", SqlDbType.NVarChar, 32), Zipcode);
  142. parameters.Add(new SqlParameter("@Phone", SqlDbType.NVarChar, 32), Phone);
  143. parameters.Add(new SqlParameter("@URL", SqlDbType.NVarChar, 32), "");
  144. parameters.Add(new SqlParameter("@CreatedBy", SqlDbType.NVarChar, 128), CreatedBy);
  145. parameters.Add(new SqlParameter("@CreatedDate", SqlDbType.DateTime, 0), CreatedDate);
  146. parameters.Add(new SqlParameter("@ModifiedBy", SqlDbType.NVarChar, 128), ModifiedBy);
  147. parameters.Add(new SqlParameter("@ModifiedDate", SqlDbType.DateTime, 0), ModifiedDate);
  148.  
  149. ExecuteStoredProcedure("sp_Insert", parameters,false);
  150.  
  151. }
  152.  
  153. /// <summary>
  154. /// LoadFromSqlReader does not load data into your BusinessEntity
  155. /// </summary>
  156. /// <param name="sp">This must be a stored procedure</param>
  157. /// <returns>The new Key field ID</returns>
  158. public static int ExecuteStoredProcedure(string sp)
  159. {
  160. return ExecuteStoredProcedure(sp, null, CommandType.StoredProcedure, false);
  161. }
  162.  
  163. /// <summary>
  164. /// This version allows you to pass in Parameters and thier values
  165. /// </summary>
  166. /// <param name="sp">This must be a stored procedure</param>
  167. /// <param name="Parameters">Two types of key/value pairs are allowed</param>
  168. /// <param name="hasReturnValue">Indicates whether the item has a return value</param>
  169. /// <returns>The new Key field ID</returns>
  170. public static int ExecuteStoredProcedure(string sp, ListDictionary Parameters, bool hasReturnValue)
  171. {
  172. return ExecuteStoredProcedure(sp, Parameters, CommandType.StoredProcedure, hasReturnValue);
  173. }
  174.  
  175.  
  176. /// <summary>
  177. /// This version allow you to use direct sql.
  178. /// </summary>
  179. /// <param name="sp">This must be a stored procedure</param>
  180. /// <param name="Parameters">Two types of key/value pairs are allowed, see <see cref="LoadFromSql"/></param>
  181. /// <param name="commandType">This property determines the type being passed in the "sp" parameter</param>
  182. /// <param name="hasReturnValue">This boolean value indicates whether the call should return a key value from the call</param>
  183. /// <returns>The new Key field ID</returns>
  184. public static int ExecuteStoredProcedure(string sp, ListDictionary Parameters, CommandType commandType, bool hasReturnValue)
  185. {
  186. int intReturn = -1;
  187. IDbCommand cmd;
  188. cmd = new SqlCommand() as IDbCommand;
  189. cmd.Connection = new SqlConnection() as IDbConnection;
  190.  
  191. try
  192. {
  193. cmd.CommandText = sp;
  194. cmd.CommandType = commandType;
  195. IDataParameter p;
  196.  
  197. if (Parameters != null)
  198. {
  199. foreach (System.Collections.DictionaryEntry param in Parameters)
  200. {
  201. p = param.Key as IDataParameter;
  202.  
  203. if (null == p)
  204. {
  205. p.ParameterName = (string)param.Key;
  206. p.Value = param.Value;
  207. }
  208. else
  209. {
  210. p.Value = param.Value;
  211. }
  212.  
  213. cmd.Parameters.Add(p);
  214. }
  215. }
  216.  
  217. if (hasReturnValue)
  218. {
  219. SqlParameter prmReturn = new SqlParameter("@Return", SqlDbType.Int);
  220. prmReturn.Direction = ParameterDirection.ReturnValue;
  221. cmd.Parameters.Add(prmReturn);
  222. }
  223.  
  224. cmd.Connection.ConnectionString = ConfigurationSettings.AppSettings["DBConn"];
  225. cmd.Connection.Open();
  226. cmd.ExecuteNonQuery();
  227.  
  228. if (hasReturnValue)
  229. {
  230. // Get the out parameters
  231. SqlParameter prmReturn = (SqlParameter)cmd.Parameters["@Return"];
  232. intReturn = Convert.ToInt32(prmReturn.Value);
  233. }
  234.  
  235. return intReturn;
  236. }
  237. catch (Exception ex)
  238. {
  239. throw ex;
  240. }
  241. finally
  242. {
  243. if (cmd.Connection.State == ConnectionState.Open)
  244. cmd.Connection.Close();
  245. }
  246. }
  247.  
  248. }
  249. }

Report this snippet 

You need to login to post a comment.