private void btnDeleteData_Click(object sender, EventArgs e) { OpenFileDialog dlg = new OpenFileDialog(); dlg.RestoreDirectory = true; dlg.Filter = "Excel Xml(*.xml)|*.xml"; //saveFileDialog1.Title = "保存"; if (dlg.ShowDialog() == DialogResult.OK) { if (MessageForm.ShowYesNo("您正在删除数据库数据,按照主键删除,是否确认?")) { ADUtils.DeleteFromXmlFile(dlg.FileName); } } }
/// <summary> /// 反安装 /// </summary> /// <param name="moduleName"></param> public static void UninstallModule(string moduleName) { CreateNecessaryDirectories(moduleName); string dir = System.IO.Directory.GetCurrentDirectory() + "\\" + moduleName; IList <ModuleInfo> moduleInfos = ADInfoBll.Instance.GetInfos <ModuleInfo>("from Feng.ModuleInfo where Id = '" + moduleName + "'"); if (moduleInfos.Count == 0) { throw new ArgumentException("There is no module named " + moduleName); } CompressionHelper.DecompressToFolder(moduleInfos[0].ModuleData, System.IO.Directory.GetCurrentDirectory()); // ReferenceData foreach (string file in System.IO.Directory.GetFiles(dir + "\\referencedata\\standard\\")) { ADUtils.DeleteFromXmlFile(file); } // ApplicationDictionaryData foreach (string file in System.IO.Directory.GetFiles(dir + "\\src-db\\database\\sourcedata\\")) { string s = System.IO.Path.GetFileNameWithoutExtension(file); if (s.StartsWith("AD_Module")) { continue; } ADUtils.DeleteFromXmlFile(file); } //// DbTable //foreach (string file in System.IO.Directory.GetFiles(dir + "src-db\\database\\model\\tables\\")) //{ //} // DbView foreach (string file in System.IO.Directory.GetFiles(dir + "\\src-db\\database\\model\\views\\")) { string script = "DROP VIEW " + System.IO.Path.GetFileNameWithoutExtension(file); DbHelper.Instance.ExecuteNonQuery(script); } // DbFunction foreach (string file in System.IO.Directory.GetFiles(dir + "\\src-db\\database\\model\\functions\\")) { string script = "DROP FUNCTION " + System.IO.Path.GetFileNameWithoutExtension(file); DbHelper.Instance.ExecuteNonQuery(script); } // DbTrigger foreach (string file in System.IO.Directory.GetFiles(dir + "\\src-db\\database\\model\\triggers\\")) { string script = "DROP TRIGGER " + System.IO.Path.GetFileNameWithoutExtension(file); DbHelper.Instance.ExecuteNonQuery(script); } // DbProcedure foreach (string file in System.IO.Directory.GetFiles(dir + "\\src-db\\database\\model\\procedures\\")) { string script = "DROP PROCEDURE " + System.IO.Path.GetFileNameWithoutExtension(file); DbHelper.Instance.ExecuteNonQuery(script); } }