请注意,这不是实际情况,只是一个简化的例子。
假设我有一个Log类,然后Sub归类为我有一个文件日志和一个电子邮件日志。 现在让我们说我想要一个配置部分,如
Logs>
Log Type="file" fileName="log.txt" Verbosity="3"/>
Log Type="email" emailAddress="email@server.com" Verbosity="1"/>
/Logs>
目前我有一个允许
的解决方案 Logs>
Log Type="file" Verbosity="3"/>
Log Type="email" Verbosity="1"/>
/Logs>
但是一旦我尝试添加fileName或emailAddress *(这只是一个示例),我就会收到错误,因为基本日志类的配置部分不包含特定于子日志类型的configurationProperties。有什么方法可以实现这个目标吗?
答案 0 :(得分:0)
您可以覆盖OnDeserializeUnrecognizedAttribute方法并将值存储在某种属性包中。如果查看System程序集中的System.Diagnostics.ListenerElement类,您可以看到它就是这样做的;你需要获得框架源或使用反编译器。