所以这对我来说是新的。
我试图在我的类库中定义一个ConfigurationSection类,该类从WinForms应用程序的App.Config中提取。我以前从未做过此事,但是从下面的示例开始,这是我必须要做的。
我的WinForms应用中的app.config
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="ReportEngineConfig" type="Optima.ReportEngine.ReportEngineConfig" allowDefinition="Everywhere" allowLocation="true"/>
</configSections>
<ReportEngineConfig>
<ReportObjectVariableRegEx value="test" ></ReportObjectVariableRegEx>
</ReportEngineConfig>
</configuration>
而我的ConfigurationSection类在我单独的类库中。
使用System.Configuration;
namespace Optima.ReportEngine
{
public class ReportEngineConfig : ConfigurationSection
{
[ConfigurationProperty("ReportObjectVariableRegEx")]
public string ReportObjectVariableRegEx
{
get
{
return (string)this["value"];
}
}
}
}
所以任何人都可以指出我哪里出了问题
谢谢!
最佳答案
您的类型标记需要引用程序集名称,而不仅仅是类型名称:
type="Optima.ReportEngine.ReportEngineConfig, Optima.ReportEngineAssembly"
逗号后的部分是包含ReportEngineConfig的程序集的名称。您还必须确保使用此app.config的应用程序引用了包含ReportEngineConfig的同一程序集。
您也可以摆脱allowDefinition和allowLocation标记...将默认值放入其中。
关于c# - 如何定义ConfigurationSection,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/2333422/