WCF对App.config配置文件的修改方法我们将会通过以下这段代码为大家详细介绍相关操作方法。希望对于又需要的朋友们能够从今天介绍的内容中获得一些帮助,来解决他们在实际应用中碰到的一些问题。
WCF修改App.config配置文件代码示例:
- using System.ServiceModel.Configuration;using System.Text.
RegularExpressions;// 修改配置文件- private void ChanageConfig()
- {
- Configuration config = ConfigurationManager.OpenExeConfiguration
(Application.ExecutablePath);- ConfigurationSectionGroup sct = config.SectionGroups
["system.serviceModel"];- ServiceModelSectionGroup serviceModelSectionGroup =
sct as ServiceModelSectionGroup;- ClientSection clientSection = serviceModelSectionGroup.Client;
- foreach (ChannelEndpointElement item in clientSection.Endpoints)
- {
- string pattern = "://.*/";
- string address = item.Address.ToString();
- string replacement = string.Format("://{0}:{1}/",
Global.ServerIP, Global.ServerPort);- address = Regex.Replace(address, pattern, replacement);
- item.Address = new Uri(address);
- }
- config.Save(ConfigurationSaveMode.Modified);
- ConfigurationManager.RefreshSection("system.serviceModel");
- return;
- /*
- Configuration configuration = ConfigurationManager.
OpenExeConfiguration(ConfigurationUserLevel.None);- ServiceModelSectionGroup serviceModelSectionGroup =
ServiceModelSectionGroup.GetSectionGroup(configuration);- ClientSection clientSection = serviceModelSectionGroup.Client;
- foreach(ChannelEndpointElement item in clientSection.Endpoints)
- {
- MessageBox.Show(item.Address.Host);
- }
- configuration.Save();
- */
- return;
- XmlDocument xmlDoc = new XmlDocument();
- xmlDoc.Load("Rca.exe.config");
- XmlNodeList nodeList = xmlDoc.SelectSingleNode
("configuration/appSettings").ChildNodes;- foreach (XmlNode node in nodeList)
- {
- switch (node.Attributes["key"].InnerText.ToLower())
- {
- case "serverip":
- node.Attributes["value"].InnerText = Global.ServerIP;
- break;
- case "serverport":
- node.Attributes["value"].InnerText = Global.ServerPort;
- break;
- case "langdataid":
- node.Attributes["value"].InnerText = Global.LangDataID;
- break;
- case "uidataid":
- node.Attributes["value"].InnerText = Global.UIDataID;
- break;
- }
- }
- nodeList = xmlDoc.SelectSingleNode("configuration/
system.serviceModel/client").ChildNodes;- foreach (XmlNode node in nodeList)
- {
- string pattern = "://.*/";
- string address = node.Attributes["address"].InnerText;
- string replacement = string.Format("://{0}:{1}/",
Global.ServerIP, Global.ServerPort);- address = Regex.Replace(address, pattern, replacement);
- node.Attributes["address"].InnerText = address;
- if (node.Attributes["contract"].InnerText == "LogicCommon")
- {
- LogicCommonCfgName = node.Attributes["name"].InnerText;
- LogicCommonAddress = node.Attributes["address"].InnerText;
- }
- }
- xmlDoc.Save("Rca.exe.config");
- }
以上就是我们为大家介绍的WCF修改App.config配置文件的全部操作步骤。
【编辑推荐】