WSqlCommand.cs
上传用户:horngjaan
上传日期:2009-12-12
资源大小:2882k
文件大小:3k
源码类别:

Email服务器

开发平台:

C#

  1. using System;
  2. using System.Collections;
  3. using System.Data;
  4. using System.Data.SqlClient;
  5. namespace LumiSoft.MailServer
  6. {
  7. /// <summary>
  8. /// Summary description for WSqlCommand.
  9. /// </summary>
  10. internal class WSqlCommand : IDisposable
  11. {
  12. private SqlCommand m_SqlCmd  = null;
  13. private string     m_connStr = "";
  14. /// <summary>
  15. /// Default constructor.
  16. /// </summary>
  17. /// <param name="connectionString">Connection string.</param>
  18. /// <param name="commandText">Command text.</param>
  19. public WSqlCommand(string connectionString,string commandText)
  20. {
  21. m_connStr = connectionString;
  22. m_SqlCmd = new SqlCommand(commandText);
  23. m_SqlCmd.CommandType    = CommandType.StoredProcedure;
  24. m_SqlCmd.CommandTimeout = 180;
  25. }
  26. #region function Dispose
  27. public void Dispose()
  28. {
  29. if(m_SqlCmd != null){
  30. m_SqlCmd.Dispose();
  31. }
  32. }
  33. #endregion
  34. #region function AddParameter
  35. /// <summary>
  36. /// Adds parameter to Sql Command.
  37. /// </summary>
  38. /// <param name="name">Parameter name.</param>
  39. /// <param name="dbType">Parameter datatype.</param>
  40. /// <param name="value">Parameter value.</param>
  41. public void AddParameter(string name,SqlDbType dbType,object value)
  42. {
  43. SqlDbType dbTyp = dbType;
  44. object val = value;
  45. if(val is DateTime){
  46. DateTime date = (DateTime)value;
  47. val = new DateTime(date.Year,date.Month,date.Day,0,0,0,0);
  48. }
  49. if(dbType == SqlDbType.UniqueIdentifier){
  50. dbTyp = SqlDbType.NVarChar;
  51. string guid = val.ToString();
  52. if(guid.Length < 1){
  53. return;
  54. }
  55. }
  56. m_SqlCmd.Parameters.Add(name,dbTyp).Value = val;
  57. }
  58. #endregion
  59. #region fucntion Execute
  60. /// <summary>
  61. /// Executes command.
  62. /// </summary>
  63. /// <returns></returns>
  64. public DataSet Execute()
  65. {
  66. DataSet dsRetVal = null;
  67. using(SqlConnection con = new SqlConnection(m_connStr)){
  68. con.Open();
  69. m_SqlCmd.Connection = con;
  70. dsRetVal = new DataSet();
  71. SqlDataAdapter adapter = new SqlDataAdapter(m_SqlCmd);
  72. adapter.Fill(dsRetVal);
  73. adapter.Dispose();
  74. }
  75. return dsRetVal;
  76. }
  77. #endregion
  78. #region Properties Implementaion
  79. /// <summary>
  80. /// Gets or sets command timeout time.
  81. /// </summary>
  82. public int CommandTimeout
  83. {
  84. get{ return m_SqlCmd.CommandTimeout; }
  85. set{ m_SqlCmd.CommandTimeout = value; }
  86. }
  87. /// <summary>
  88. /// Gets or sets command type.
  89. /// </summary>
  90. public CommandType CommandType
  91. {
  92. get{ return m_SqlCmd.CommandType; }
  93. set{ m_SqlCmd.CommandType = value; }
  94. }
  95. #endregion
  96. }
  97. }