Tag: system.configuration

获取不同.NET版本的machine.config路径的最佳方法

如果应用程序在.net 4.0上运行,那么获取.net 2.0 machine.config文件路径的最佳方法是什么? 一种方法是进行字符串操作和文件系统访问,以便在new ConfigurationFileMap().MachineConfigFilename;中用v2.0 *替换v4.0 * new ConfigurationFileMap().MachineConfigFilename; 然后将其传递给ConfigurationManager.OpenMappedMachineConfiguration(new ConfigurationFileMap()) 。 如果没有更好的可用性,我将采用这种解决方案。

ConfigurationElementCollection具有许多不同类型的ConfigurationElements

是否可以使CollectionElementCollection具有许多不同类型的CollectionElements,例如: </collection 我有这样的解决方案所需的所有类: class MyCollection : ConfigurationElementCollection { } class MyElement : ConfigurationElement { } class MyType1 : MyElement { } class MyType2 : MyElement { } … etc 但当我启动我的应用程序时,我得到下一个可预测的错误: 无法识别的属性’Type1SpecificProp’。 因为Type1SpecificProp是在MyType1而不是MyElement定义的,特别是如果MyCollection具有下一个方法: protected override ConfigurationElement CreateNewElement() { return new MyElement(); // but I want instantiate not the base class but by a type given } […]

读取外部配置文件

我有一个执行FTP操作的ac。.Net控制台应用程序。 目前,我在自定义配置部分中指定设置,例如 我想在命令行中指定一个外部配置文件。 然而!!!… 我刚刚意识到上面的“FtpConfiguration”部分并不真正属于应用程序的app.config。 我的最终目标是,我将有许多执行我的控制台应用程序的计划任务,如下所示: FileTransferHelper.exe -c FtpApplication1.config FileTransferHelper.exe -c FtpApplication2.config … FileTransferHelper.exe -c FtpApplication99.config 因此,我相信我走错了路,我真正想要的是在我的自定义xml文档中读取的内容,但继续使用System.Configuration获取值…而不是读取XmlDocument并将其序列化为获取节点/元素/属性。 (虽然如果有人能告诉我一些简单的代码,我不反对后者) 指针将不胜感激。 谢谢。 更新:我接受的答案是另一个StackOverflow问题的链接,在这里用我的代码重复 – 下面正是我想要的 – 使用OpenMappedExeConfiguration打开我的外部配置文件 ExeConfigurationFileMap configFileMap = new ExeConfigurationFileMap(); configFileMap.ExeConfigFilename = @”D:\Development\FileTransferHelper\Configuration\SampleInterface.config”; Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configFileMap, ConfigurationUserLevel.None); FtpConfigurationSection ftpConfig = (FtpConfigurationSection)config.GetSection(“ftpConfiguration”);

获取另一个Exe的App.Config

我有一个带有App.Config文件的exe。 现在我想在exe周围创建一个包装器dll,以便消耗一些function。 问题是如何从包装器DLL访问exe中的app.config属性? 也许我应该在我的问题中多一点,我有以下app.config内容与exe: 问题是如何从包装器DLL中取出“myValue”? 谢谢你的解决方案。 实际上我最初的概念是避免使用XML文件读取方法或LINQ或其他任何方法。 我首选的解决方案是使用配置管理器库等 。 我将非常感谢使用通常与访问app.config属性相关联的类的任何帮助。