我已经在一个dll应用程序的设置中保存了字符串。我想要检索它们。
这是我的dll的配置文件:
它和我的dll放在同一个目录下。它的名字叫做:Search.dll.config 我的dll的名字是:Search.dll
我想从这个配置文件中读取ReadIndex和WriteIndex的值到我的dll中。
以下是代码:
代码可以运行到这里并获得最后一行。但是我如何获取设置字符串?
是的,我可以使用
我如何读取值?最好是读入设置对象中?非常感谢!
这是我的dll的配置文件:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="applicationSettings" type="System.Configuration.ApplicationSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=xxxxxxxxxxxxxxxxxxxxx" >
<section name="Search.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=xxxxxxxxxxxx" requirePermission="false" />
</sectionGroup>
</configSections>
<applicationSettings>
<PishiSearch.Properties.Settings>
<setting name="ReadIndex" serializeAs="String">
<value>C:\Index</value>
</setting>
<setting name="WriteIndex" serializeAs="String">
<value>C:\WriteIndex</value>
</setting>
</PishiSearch.Properties.Settings>
</applicationSettings>
</configuration>
它和我的dll放在同一个目录下。它的名字叫做:Search.dll.config 我的dll的名字是:Search.dll
我想从这个配置文件中读取ReadIndex和WriteIndex的值到我的dll中。
以下是代码:
var executingAssembly = System.Reflection.Assembly.GetExecutingAssembly();
var location = executingAssembly.Location; //C:\MyApp\bin\Debug\Search.dll
var config = ConfigurationManager.OpenExeConfiguration(location);
var sections = config.Sections; //count of this is 21
ConfigurationSectionGroup csg = config.GetSectionGroup("applicationSettings");
ConfigurationSectionCollection csc = csg.Sections;
ConfigurationSection cs = csc.Get("Search.Properties.Settings");
代码可以运行到这里并获得最后一行。但是我如何获取设置字符串?
是的,我可以使用
cs.SectionInformation.GetRawXml();
来获取 XML 并对其进行查询以获取值,但那是一个临时解决办法。我如何读取值?最好是读入设置对象中?非常感谢!