ModulesDB.cs
上传用户:autodoor
上传日期:2022-08-04
资源大小:9973k
文件大小:4k
源码类别:

.net编程

开发平台:

Others

  1. using System;
  2. using System.Data.SqlClient;
  3. using System.Data;
  4. using qminoa.Common.Data;
  5. namespace qminoa.DA
  6. {
  7. /// <summary>
  8. /// ModulesDB 的摘要说明。
  9. /// </summary>
  10. public class ModulesDB
  11. {
  12. //
  13. //创建联接所需要的字符串
  14. //
  15. private string conStr ;
  16. //
  17. //连接对象
  18. //
  19. private SqlConnection con ;
  20. //
  21. //适配器对象,该对象对DataSet操作,将数据库的信息填入dataSet
  22. //
  23. private SqlDataAdapter commandAdp ;
  24. public ModulesDB()
  25. {
  26. conStr = System.Configuration.ConfigurationSettings.AppSettings.Get("ConnectionString");
  27. con = new SqlConnection(conStr);
  28. commandAdp = new SqlDataAdapter();
  29. }
  30. /// <summary>
  31. /// 提供存储过程的参数
  32. /// </summary>
  33. /// <param name="str"></param>
  34. /// <returns></returns>
  35. private string paramChg(string str)
  36. {
  37. str = "@"+str;
  38. return str;
  39. }
  40. public DataSet GetModulesData()
  41. {
  42. SqlCommand command = new SqlCommand();
  43. command.CommandText = "select * from sysTab order by tabid";
  44. command.Connection = con;
  45. commandAdp.SelectCommand = command;
  46. DataSet data = new DataSet();
  47. commandAdp.Fill(data);
  48. return data;
  49. }
  50. /// <summary>
  51. /// 删除指定的部门
  52. /// </summary>
  53. /// <param name="depID"></param>
  54. public bool DeleteModule(int pkid)
  55. {
  56. SqlCommand command = new SqlCommand();
  57. command.CommandText = "DeleteModules";
  58. command.CommandType = CommandType.StoredProcedure;
  59. SqlParameter param = new SqlParameter(paramChg(ModuleData.PK_FIELD),SqlDbType.Int);
  60. param.Value = pkid;
  61. command.Parameters.Add(param);
  62. command.Connection = con;
  63. con.Open();
  64. int i = command.ExecuteNonQuery();
  65. con.Close();
  66. if(i==0)
  67. {
  68. return false;
  69. }
  70. else
  71. {
  72. return true;
  73. }
  74. }
  75. /// <summary>
  76. /// 更新指定的部门信息
  77. /// </summary>
  78. /// <param name="depData"></param>
  79. /// <returns></returns>
  80. public bool UpdateModule(ModuleData moduleData)
  81. {
  82. commandAdp.UpdateCommand = GetCommand();
  83. commandAdp.UpdateCommand.Parameters.Add(new SqlParameter(paramChg(ModuleData.PK_FIELD),SqlDbType.Int));
  84. commandAdp.UpdateCommand.Parameters[paramChg(ModuleData.PK_FIELD)].SourceColumn = ModuleData.PK_FIELD;
  85. commandAdp.UpdateCommand.CommandText = "UpdateModules";
  86. commandAdp.Update(moduleData,ModuleData.MODULE_TABLE_NAME);
  87. if(moduleData.HasErrors)
  88. {
  89. moduleData.Tables[ModuleData.MODULE_TABLE_NAME].GetErrors()[0].ClearErrors();
  90. return false;
  91. }
  92. else
  93. {
  94. moduleData.AcceptChanges();
  95. return true;
  96. }
  97. }
  98.  /// <summary>
  99.  /// 新建子模块
  100.  /// </summary>
  101.  /// <param name="moduleData"></param>
  102.  /// <returns></returns>
  103.  public bool CreateModule(ModuleData moduleData)
  104.  {
  105.  commandAdp.InsertCommand = GetCommand();
  106.  commandAdp.InsertCommand.CommandText = "InsertModule";
  107.  commandAdp.Update(moduleData,ModuleData.MODULE_TABLE_NAME);
  108.  if(moduleData.HasErrors)
  109.  {
  110.  moduleData.Tables[ModuleData.MODULE_TABLE_NAME].GetErrors()[0].ClearErrors();
  111.  return false;
  112.  }
  113.  else
  114.  {
  115.  moduleData.AcceptChanges();
  116.  return true;
  117.  }
  118.  }
  119. /// <summary>
  120. /// 提供给适配器的命令
  121. /// </summary>
  122. /// <param name="depID"></param>
  123. /// <returns></returns>
  124. private SqlCommand GetCommand()
  125. {
  126. SqlCommand command = new SqlCommand();
  127. command.Connection = con;
  128. command.CommandType = CommandType.StoredProcedure;
  129. SqlParameterCollection param = command.Parameters;
  130. param.Add(new SqlParameter(paramChg(ModuleData.TABID_FIELD),SqlDbType.VarChar));
  131. param.Add(new SqlParameter(paramChg(ModuleData.INDEXID_FIELD),SqlDbType.VarChar));
  132. param.Add(new SqlParameter(paramChg(ModuleData.NAME_FIELD),SqlDbType.VarChar));
  133. param.Add(new SqlParameter(paramChg(ModuleData.DESCRIPTION_FIELD),SqlDbType.VarChar));
  134. param.Add(new SqlParameter(paramChg(ModuleData.URL_FIELD),SqlDbType.VarChar));
  135. param[paramChg(ModuleData.TABID_FIELD)].SourceColumn = ModuleData.TABID_FIELD;
  136. param[paramChg(ModuleData.INDEXID_FIELD)].SourceColumn = ModuleData.INDEXID_FIELD;
  137. param[paramChg(ModuleData.NAME_FIELD)].SourceColumn = ModuleData.NAME_FIELD;
  138. param[paramChg(ModuleData.DESCRIPTION_FIELD)].SourceColumn = ModuleData.DESCRIPTION_FIELD;
  139. param[paramChg(ModuleData.URL_FIELD)].SourceColumn = ModuleData.URL_FIELD;
  140. return command;
  141. }
  142. }
  143. }