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);
                }
            }
        }
Exemple #2
0
        /// <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);
            }
        }