将自定义属性添加到 app.config 中的自定义提供程序配置部分
我正在关注这篇关于 如何在 .NET 中创建 Provider 框架
基本上,本文详细解释了如何最终得到如下所示的配置文件
<configuration>
<configSections>
<section name="data" type="DataProviderConfigurationSection" />
</configSections>
<data defaultProvider="MyDataProvider">
<providers>
<add name="MydataProvider" type="MyDataProvider" />
</providers>
</data>
</configuration>
:
元素允许您定义提供者。
但是,我想知道如何使用自定义属性扩展 add
条目。
例如:
<providers>
<add name="MydataProvider" type="MyDataProvider" myProperty="myValue" myProperty2="myValue2" ... />
</providers>
任何帮助将不胜感激。
I am following this great article on how to create a Provider framework in .NET
Basically, this article explains greatly how to end up with a configuration file like the following:
<configuration>
<configSections>
<section name="data" type="DataProviderConfigurationSection" />
</configSections>
<data defaultProvider="MyDataProvider">
<providers>
<add name="MydataProvider" type="MyDataProvider" />
</providers>
</data>
</configuration>
Where the <add/>
element allows you to define a provider.
However, I would like to know how to extend the add
entry with custom attributes.
For example:
<providers>
<add name="MydataProvider" type="MyDataProvider" myProperty="myValue" myProperty2="myValue2" ... />
</providers>
Any help will be greatly appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
这是我最终找到的。这是一个非常具体的问题,涉及使用更多属性扩展元素以及在实现提供程序框架时如何处理它们。关于自定义配置部分的所有答案都可以,但没有解决原始问题。
如果您需要实现自定义 Provider,例如
MembershipProvider
,但为了您自己的目的,您一定需要阅读这篇文章:创建您自己的框架Provider Framework这是一本很棒的读物。现在,如果您需要使用自己的属性扩展元素,则需要更改以下内容...
1) 接下来是本文中讨论的代码(可能有一些修改):
2) 这是您需要的配置文件用于上述代码:
3) 现在,您需要修改以下内容才能使用读取配置文件中
元素中的属性。4) 配置文件如下所示:
作为奖励,这里有一个单元测试来验证它的工作原理:
Here is what I finally found. This is a very specific question about extending the element with more attributes and how to handle them when implementing a Provider Framework. All the answers about custom configuration sections are OK but not addressing the original question.
If you need to implement a custom Provider, like the
MembershipProvider
, but for your own purpose, you need to definitely read this article: Creating Your Own Provider FrameworkIt is excellent reading. Now if you need to extend the element with your own attributes, here is what you need to change...
1) Next is the code discussed in the article (There might be some adaptations):
2) This is the config file that you use for the above code:
3) Now, here is what you need to modify in order to use read the attributes in the
<add>
element in the configuration file.4) The configuration file looks like this:
And as a bonus, here is a Unit test to validate it works:
您可以使用 ConfigurationProperty 和 ProviderBase
You can use ConfigurationProperty and ProviderBase
喜欢:
?
C# 代码:
Like:
?
The c# codes:
您需要创建自定义 ConfigurationSection 实现,这将允许您创建像您提供的那样的自定义配置树。
You need to create a custom ConfigurationSection implementation, which will allow you to create a customized config tree like you provided.