如何以编程方式在配置文件中创建/编辑 WCF 部分?我知道如何阅读。但是当您尝试更改配置时,会出现错误:
string pathToProg = @ "C: \ Proj \ WCF_Config \ ConsoleApplication1 \ bin \ Debug \Test.config";
ExeConfigurationFileMap configFileMap = new ExeConfigurationFileMap();
configFileMap.ExeConfigFilename = pathToProg;
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configFileMap, ConfigurationUserLevel.None);
ClientSection clientSection = ConfigurationManager.GetSection("system.serviceModel/client") as ClientSection;
// Exception: "The configuration is read only."
clientSection.Endpoints.Add(new ChannelEndpointElement(new EndpointAddress(@"http://1.1.1.1:1/HL7"), "Server.Message"));
我的最终目标 - 以编程方式从头开始创建(和编辑)带有设置 WCF 的配置文件。如果你知道这是如何解决的,请告诉我。这对我们的维护部门来说是必要的,因为他们发现很难直接编辑配置文件(IP、绑定等)。
UPD。 现在专门去掉了整个目录的复选框“只读”。
什么也没有变。
您可以执行此代码吗?这很简单——你只需要在配置文件部分是“system.servismodel”和相关数据。
附言。我认为问题在于:ClientSection clientSection = ConfigurationManager.GetSection("system.serviceModel/client") as ClientSection; clientSection.Endpoints.IsReadOnly - 返回 true 。
一次机会我的决定是根本错误的。该集合原则上不可编辑。
如何纠正?我希望有人已经面临以编程方式创建配置文件的需要。