예제 #1
0
        /// <summary>
        /// 本方法可以得到配置文件中的数据类型映射信息.
        /// </summary>
        /// <param name="doc">配置文件对象</param>
        /// <param name="dbType">数据库类型</param>
        /// <returns>包含数据类型映射信息的表对象</returns>
        private static DataTable GetDataTypeMapping(XmlDocument doc, string dbType)
        {
            //得到xml数据查询字符串.
            string xpath = "";

            if (dbType.Equals("SqlServer"))
            {
                xpath = "/Setting/DataTypeMapping/SqlServer/item";
            }
            else if (dbType.Equals("Access"))
            {
                xpath = "/Setting/DataTypeMapping/MSAccess/item";
            }
            else
            {
                xpath = "/Setting/DataTypeMapping/Oracle/item";
            }

            //得到数据映射信息集合.
            XmlNodeList nodes = doc.SelectNodes(xpath);
            XmlNode     node  = null;

            //得到将包含数据类型映射信息的表对象.
            DataTable table = ToolSetting.GetTableStructure();

            //将数据类型映射信息填充到表对象中.
            for (int i = 0; i < nodes.Count; i++)
            {
                node = nodes[i];
                table.Rows.Add(new object[] { node.ChildNodes[0].InnerText, node.ChildNodes[1].InnerText });
            }

            //返回表对象.
            return(table);
        }
예제 #2
0
        /// <summary>
        /// 本方法用于保存用户设置.
        /// </summary>
        /// <returns>是否保存成功</returns>
        public static bool SaveUserSetting()
        {
            bool        succ     = false;
            XmlDocument settings = new XmlDocument();

            try
            {
                settings.Load("UserSetting.xml");
                settings.SelectSingleNode("/Setting/Language").InnerText     = ToolSetting.Language;
                settings.SelectSingleNode("/Setting/Postfix").InnerText      = ToolSetting._postfix;
                settings.SelectSingleNode("/Setting/TabSize").InnerText      = ToolSetting._tabsize.ToString();
                settings.SelectSingleNode("/Setting/SavePath").InnerText     = ToolSetting._savePath;
                settings.SelectSingleNode("/Setting/ServiceName").InnerText  = ToolSetting._serviceName;
                settings.SelectSingleNode("/Setting/UserName").InnerText     = ToolSetting._userName;
                settings.SelectSingleNode("/Setting/UserPassWord").InnerText = ToolSetting._userPassWord;
                ToolSetting.SaveReferenceList(settings);
                ToolSetting.SaveDataTypeMappingInfo(settings, "SqlServer");
                ToolSetting.SaveDataTypeMappingInfo(settings, "Access");
                ToolSetting.SaveDataTypeMappingInfo(settings, "Oracle");
                settings.Save("UserSetting.xml");
                succ = true;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
            return(succ);
        }
예제 #3
0
        /// <summary>
        /// 本方法用于加载用户设置.
        /// </summary>
        /// <returns>是否成功加载</returns>
        public static bool LoadUserSettings()
        {
            bool        success  = false;
            XmlDocument settings = new XmlDocument();

            try
            {
                settings.Load("UserSetting.xml");
                ToolSetting._language             = settings.SelectSingleNode("/Setting/Language").InnerText;
                ToolSetting._postfix              = settings.SelectSingleNode("/Setting/Postfix").InnerText;
                ToolSetting._tabsize              = Convert.ToInt32(settings.SelectSingleNode("/Setting/TabSize").InnerText);
                ToolSetting._savePath             = settings.SelectSingleNode("/Setting/SavePath").InnerText;
                ToolSetting._serviceName          = settings.SelectSingleNode("/Setting/ServiceName").InnerText;
                ToolSetting._userName             = settings.SelectSingleNode("/Setting/UserName").InnerText;
                ToolSetting._userPassWord         = settings.SelectSingleNode("/Setting/UserPassWord").InnerText;
                ToolSetting._references           = ToolSetting.GetReferences(settings);
                ToolSetting._dalreferences        = ToolSetting.GetDALReferences(settings);
                ToolSetting._idalreferences       = ToolSetting.GetIDALReferences(settings);
                ToolSetting._controllerReferences = ToolSetting.GetControllerReferences(settings);
                ToolSetting._sqlDataMapping       = ToolSetting.GetDataTypeMapping(settings, "SqlServer");
                ToolSetting._accessDataMapping    = ToolSetting.GetDataTypeMapping(settings, "Access");
                ToolSetting._oracleDataMapping    = ToolSetting.GetDataTypeMapping(settings, "Oracle");
                success = true;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message + "\n加载配置文件失败,应用程序将退出!");
                Application.Exit();
            }
            return(success);
        }