C# 如何在消息日志wcf中添加筛选器
我有一个WCF服务,正在尝试记录其请求/响应 我试图在消息日志上添加过滤器,并尝试按照这里的说明操作 我在互联网上搜索如何做到这一点,以下是我尝试过的C# 如何在消息日志wcf中添加筛选器,c#,wcf,C#,Wcf,我有一个WCF服务,正在尝试记录其请求/响应 我试图在消息日志上添加过滤器,并尝试按照这里的说明操作 我在互联网上搜索如何做到这一点,以下是我尝试过的 <system.serviceModel> <diagnostics> <!-- log all messages sent/received at the service model level --> <messageLogging logEntireMe
<system.serviceModel>
<diagnostics>
<!-- log all messages sent/received at the service model level -->
<messageLogging logEntireMessage="true"
maxMessagesToLog="1000"
maxSizeOfMessageToLog="69905067"
logMessagesAtServiceLevel="true",
logMessagesAtTransportLevel="true">
<filters>
<add nodeQuota="10" xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
/soap:Envelope/soap:Header
</add>
</filters>
</messageLogging>
</diagnostics>
</system.serviceModel>
<system.diagnostics>
<sources>
<!-- Log all messages in the 'Messages' tab of SvcTraceViewer. -->
<source name="System.ServiceModel.MessageLogging">
<listeners>
<add name="xml" />
</listeners>
</source>
</sources>
<sharedListeners>
<add name="xml"
type="System.Diagnostics.XmlWriterTraceListener"
initializeData="C:\LOGFILE.svclog"
traceOutputOptions="LogicalOperationStack, DateTime, Timestamp, ProcessId, ThreadId, Callstack"/>
</sharedListeners>
<trace autoflush="true" />
</system.diagnostics>
/soap:信封/soap:标题
/soap:信封/soap:标题
但是,当我将鼠标悬停在***
上时,它表示缺少所需的属性“filter”,并且/soap:Envelope/soap:Header“元素不能包含文本。内容模型为空”
我做错了吗
有什么办法吗?
谢谢您似乎缺少过滤器中的
操作
。以下格式是ContractNamespace/ContractName/OperationName
=/soap:Envelope/soap:Header/YOURACTIONHERE
的默认格式。看起来您有名称空间和约定名称,但没有操作名称(操作)。添加操作的目的是要知道过滤器应该做什么,如果没有,您将过滤什么?此外,有关更多信息,请参阅本文。有关“在WCF中配置跟踪”的信息,请参阅以下链接:@Codexer/soap:Envelope/soap:Header/soap:Action[contains(text(),'readRequest')]
我已将我的筛选器编辑为此。但它仍然说“元素不能包含文本。内容模型为空”我做错了吗?
<filters>
<add xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
/soap:Envelope/soap:Header
</add>
</filters>