一、將config封裝實體層;
例子config:
<?xml version="1.0" encoding="utf-8" ?><Settings> <CRMSettings> <UserName>administrator</UserName> <PassWord>Sh123456</Password> <Domain>SSO.COM</Domain> <ConnectionString>Data Source=.;Initial Catalog=XHMZJ_MSCRM;User ID=sa;password=Sh123456</ConnectionString> </CRMSettings> <DataSourceSettings> <ConnectionString>Data Source=.;Initial Catalog=XH_YWXT;User ID=sa;password=Sh123456</ConnectionString> </DataSourceSettings></Settings>
1.對于web版本的web.config。
public class ConfigHelper { PRivate static ConfigHelper _instance = null; public static ConfigHelper Instance { get { if (_instance == null) _instance = new ConfigHelper(); return _instance; } } public ConfigHelper() { this.CRMConfigInstance = new CRMConfig(); Exception Ex = null; try { this.CRMConfigInstance.ServerURL = System.Configuration.ConfigurationManager.AppSettings["WebUrl"]; this.CRMConfigInstance.UserName = System.Configuration.ConfigurationManager.AppSettings["UserName"]; this.CRMConfigInstance.Password = System.Configuration.ConfigurationManager.AppSettings["Password"]; this.CRMConfigInstance.Domain = System.Configuration.ConfigurationManager.AppSettings["Domain"]; this.CRMConfigInstance.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["MZJCRM"].ConnectionString; } catch (Exception ex) { Ex = ex; } finally { if (Ex != null) { //ExceptionHelper.WriteLog(Ex); } } } public CRMConfig CRMConfigInstance = null; } public class CRMConfig { private string _ConnectionString; public string ConnectionString { set { _ConnectionString = value; } get { return _ConnectionString; } } #region CRMConfig private string _serverURL; public string ServerURL { set { _serverURL = value; } get { return _serverURL; } } private string _userName; public string UserName { set { _userName = value; } get { return _userName; } } private string _password; public string Password { set { _password = value; } get { return _password; } } private string _domain; public string Domain { set { _domain = value; } get { return _domain; } } #endregion }Web版本
2.應用程序版本的config。
public class ConfigHelper { private static ConfigHelper _instance = null; public static ConfigHelper Instance { get { if (_instance == null) _instance = new ConfigHelper(); return _instance; } } const string configFileName = "CRMConfig.xml"; protected XmlDocument doc; public ConfigHelper() { this.CRMConfigInstance = new CRMConfig(); this.SourceConfigInstance = new SourceConfig(); doc = new XmlDocument(); Exception Ex = null; try { doc.Load(this.FileFullPath); XmlNode Settings = doc.DocumentElement.SelectSingleNode("Settings"); //CRMSettings XmlNode CrmSettings = doc.DocumentElement.SelectSingleNode("CRMSettings"); XmlNode WebUrl = CrmSettings.SelectSingleNode(@"WebUrl"); XmlNode UserName = CrmSettings.SelectSingleNode(@"UserName"); XmlNode Password = CrmSettings.SelectSingleNode(@"Password"); XmlNode Domain = CrmSettings.SelectSingleNode(@"Domain"); XmlNode CRMConnectionString = CrmSettings.SelectSingleNode(@"ConnectionString"); //DataSourceSettings XmlNode DataSourceSettings = doc.DocumentElement.SelectSingleNode("DataSourceSettings"); XmlNode SourceConnectionString = DataSourceSettings.SelectSingleNode(@"ConnectionString"); this.CRMConfigInstance.UserName = UserName.InnerText; this.CRMConfigInstance.Password = Password.InnerText; this.CRMConfigInstance.Domain = Domain.InnerText; this.CRMConfigInstance.ServerURL = WebUrl.InnerText; this.CRMConfigInstance.ConnectionString = CRMConnectionString.InnerText; this.SourceConfigInstance.ConnectionString = SourceConnectionString.InnerText; } catch(Exception ex) { Ex = ex; } finally { if(Ex != null) { ExceptionHelper.WriteLog(Ex); } } } private string _filePath; public string FilePath { set { this._filePath = value; } get { return System.Windows.Forms.application.StartupPath; } } /// <summary> /// full path /// </summary> public string FileFullPath { get { return System.IO.Path.Combine(this.FilePath, configFileName); } } public CRMConfig CRMConfigInstance = null; public SourceConfig SourceConfigInstance = null; } public class CRMConfig { private string _ConnectionString; public string ConnectionString { set { _ConnectionString = value; } get { return _ConnectionString; } } #region CRMConfig private string _serverURL; public string ServerURL { set { _serverURL = value; } get { return _serverURL; } } private string _userName; public string UserName { set { _userName = value; } get { return _userName; } } private string _password; public string Password { set { _password = value; } get { return _password; } } private string _domain; public string Domain { set { _domain = value; } get { return _domain; } } #endregion } public class SourceConfig { private string _ConnectionString; public string ConnectionString { set { _ConnectionString = value; } get { return _ConnectionString; } } }應用程序版本
二、SqlHeleper類
新聞熱點
疑難解答