2

我是 Webservices 的新手,我有一个问题。我有一个网络服务和这样的方法,

     CompanyOpereations srv = new CompanyOperations();
           srv.getCustomerInfo(input);

我想获取和响应。编写 getCustomerInfo 方法的肥皂请求和响应。

有人能帮我吗??我已经看到了这个,但是我登录到我需要在屏幕上打印的文件, 从在 ASP.net 中运行的 Web 参考客户端获取 RAW Soap 数据

我什至见过这个,但不知道如何调用它,我的客户的 WriteOutput 方法可以有人帮我吗? http://msdn.microsoft.com/en-us/library/ms972353.aspx

提前致谢。

如果我的问题不清楚,请告诉我!!

这不是为了调试。它是为了将它打印为方法的输出,以便其他人可以在其他地方使用 XML。

谢谢!

4

3 回答 3

2

我可能会使用 SOAP 拦截扩展,他们只是将所有内容写入日志:

ASP.NET 允许通过可扩展性机制构建与 SOAP 相关的基础结构。ASP.NET SOAP 扩展架构围绕一个扩展展开,该扩展可以在客户端或服务器上的消息处理的特定阶段检查或修改消息

MSDN 文档有一个很好的完整示例...


补充: 我无法实现上面的答案,所以我流氓了。

将此添加到您的web.config文件中:

<configuration>

  <system.diagnostics>
    <trace autoflush="true" useGlobalLock="false"/>
    <sources>
      <source name="System.Net">
        <listeners>
          <add name="traceFile"/>
        </listeners>
      </source>
    </sources>
    <sharedListeners>
      <add name="traceFile"
           type="System.Diagnostics.TextWriterTraceListener"
           initializeData="App_Data/trace.log"
           traceOutputOptions="None">
      </add>
    </sharedListeners>
    <switches>
      <add name="System.Net" value="Verbose"/>
    </switches>
  </system.diagnostics>

</configuration>

App_Data/trace.log这将输出一个与此类似的日志文件。

只需解析该文件或按原样使用它...

我没有找到任何其他方式,因为没有ServiceClient显示此类信息的方法。

我还设置了一个小型气象服务项目,因此您可以查看它并查看正在创建的日志文件

于 2012-04-26T18:36:53.477 回答
0

虽然这个实用程序来自石器时代,但在我使用它时它做得很好:SOAP Toolkit 3.0。我猜他们从那时起添加了更复杂的方法,但你应该先尝试一下。

于 2012-04-26T18:32:40.117 回答
0

我可以解决这个问题的最好方法是在我返回一个对象时序列化我的对象:)

于 2012-05-02T16:48:30.023 回答