Dav*_*lde 3 .net c# soap web-services
我正在尝试使用 4.0 .Net Framework 跟踪用 C# 编写的 SOAP Web 服务。
遵循本教程后:http://msdn.microsoft.com/en-us/library/ty48b824%28v=vs.110%29.aspx 我按以下方式配置了 Web 服务客户端的应用程序配置:
<system.diagnostics>
<trace autoflush="true"/>
<sources>
<source name="System.Net">
<listeners>
<add name="TraceFile"/>
</listeners>
</source>
<source name="System.Net.Sockets">
<listeners>
<add name="TraceFile"/>
</listeners>
</source>
</sources>
<sharedListeners>
<add name="TraceFile" type="System.Diagnostics.TextWriterTraceListener" initializeData="trace.log"/>
</sharedListeners>
<switches>
<add name="System.Net" value="Verbose"/>
<add name="System.Net.Sockets" value="Verbose"/>
</switches>
Run Code Online (Sandbox Code Playgroud)
这是可行的,但是我不需要在跟踪日志中查看十六进制代码。我提到的教程说我需要将“tracemode”属性设置为“protocolonly”。但是,当我添加此属性时,视觉工作室告诉我此属性无效。
无论如何我尝试运行该程序。但是,当我创建 Web 服务类的实例时,我收到“TypeInitializationException”。如果我删除tracemode属性,客户端工作正常,但我仍然在跟踪日志中得到十六进制代码。
如果添加“tracemode”属性,VS 会说这是不允许的,但是日志文件现在包含完整的 XML 数据。
\n\n这是我的 app.config 片段:
\n\n<system.diagnostics>\n <trace autoflush="true"/>\n <sources>\n <source name="System.Net" tracemode="protocolonly">\nRun Code Online (Sandbox Code Playgroud)\n\n没有跟踪模式:
\n\nSystem.Net Verbose: 0 : [9992] Data from ConnectStream#56298650::Write\nSystem.Net Verbose: 0 : [9992] 00000000 : 3C 73 3A 45 6E 76 65 6C-6F 70 65 20 78 6D 6C 6E : <s:Envelope xmln\nSystem.Net Verbose: 0 : [9992] 00000010 : 73 3A 73 3D 22 68 74 74-70 3A 2F 2F 73 63 68 65 : s:s="http://sche\nSystem.Net Verbose: 0 : [9992] 00000020 : 6D 61 73 2E 78 6D 6C 73-6F 61 70 2E 6F 72 67 2F : mas.xmlsoap.org/\nRun Code Online (Sandbox Code Playgroud)\n\n使用跟踪模式:
\n\nSystem.Net Verbose: 0 : [7524] ConnectStream#57911184::Write()\nSystem.Net Verbose: 0 : [7524] Data from ConnectStream#57911184::Write\nSystem.Net Verbose: 0 : [7524] <<<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/"><s:Body xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><GetCloseOutList xmlns="http://adsionline.com/ADSIShippingWS/"><shipperFriendlyName>GREENWOOD</shipperFriendlyName><carrierFriendlyName>FedEx Ground\xc3\x82\xc2\xae</carrierFriendlyName></GetCloseOutList></s:Body></s:Envelope>>>\nSystem.Net Verbose: 0 : [7524] Exiting ConnectStream#57911184::Write() \nSystem.Net Verbose: 0 : [7524] ConnectStream#57911184::Close()\nSystem.Net Verbose: 0 : [7524] Exiting ConnectStream#57911184::Close() \nRun Code Online (Sandbox Code Playgroud)\n\n我不知道为什么它会抱怨并且仍然有效。但它确实有效,我想这才是最重要的。
\n| 归档时间: |
|
| 查看次数: |
2055 次 |
| 最近记录: |