如何在XSD中为自定义log4net附加子元素正确定义元素

时间:2018-11-02 15:02:50

标签: xml xsd log4net

我是log4net的新手,需要包括一个自定义的Appender。我在 log4net.config 中为我的自定义附加程序定义了以下内容:

<appender name="SyslogAppender" type="log4net.Appenders.RemoteAppender,log4net.Appenders">
  <AppName>MySampleApp</AppName>
</appender>

log4net.xsd 中,我有

 <xs:complexType name="appender">
    ...
    <xs:element minOccurs="0" maxOccurs="1" name="AppName" type="AppName" />
    ...
 </xs:complexType>

我正在尝试定义 AppName ,以便我可以正确使用它。我尝试使用:

 <xs:complexType name="AppName">
    <xs:attribute name="value" type="xs:string" />
 </xs:complexType>

我收到错误消息,该元素不能包含文本。内容模型为空。当我使用 xs:element 时,它告诉我该上下文不支持该元素。

我也尝试使用

 <xs:element name="AppName" type="xs:string" />

如何在 log4net.config 中正确定义此名称以使用 AppName

谢谢!

1 个答案:

答案 0 :(得分:0)

我将所有这些都移到了Web.config,并且不再需要使用XSD。这解决了我的问题。可能不是最好的解决方案,但是可行。