【问题标题】:How to debug webservices in Silverlight如何在 Silverlight 中调试 Web 服务
【发布时间】:2009-04-14 14:07:17
【问题描述】:

我有 web 服务(我自己为数据库交互创建的)托管在加载我的 silverlight 项目的同一个 web 项目中。每当我放置断点以通过异步方法遍历代码时,Visual Studio 只会将我指向响应事件(已完成事件),从而跳过 Web 服务中的代码,因此不知道它们内部发生了什么。是否有在 web 服务中启用调试的选项?

【问题讨论】:

    标签: silverlight web-services


    【解决方案1】:

    弄清楚为什么它进入了webservices,我将silverlight项目而不是web项目设置为启动项目

    【讨论】:

      【解决方案2】:

      如果你的服务和 web 项目都在同一个环境中,那么,

      1. 右键wcfservice1(服务项目文件夹)--->调试--->启动新实例

      2. 同样,右键单击 web 项目文件夹 ---> 调试 ---> 启动新实例

      现在在两个文件中创建断点并开始调试..简单...

      【讨论】:

        【解决方案3】:

        一种方法是启用 WebService 跟踪选项。默认情况下,WCF 服务不报告详细信息,因为服务错误是特定于该服务的技术,不应超出服务边界。您需要编写额外的代码来披露详细的异常信息。启用服务跟踪将允许您记录服务调用和异常,并查看堆栈跟踪,而无需额外编码,并使用服务异常处理程序污染您的客户端。

        最快的方法是使用 WCF 服务配置编辑器(在 VS2008 的工具下)。运行编辑器后,打开包含服务设置的配置文件。在编辑器中,转到诊断菜单“文件夹”,然后单击“启用跟踪”。单击 Trace Level 选项将弹出一个对话框...将 Trace Level 下拉菜单设置为 Error。单击 ServiceModelTraceListener 并检查 Callstack 选项...为方便起见,可能会更改日志文件的路径。保存。

        当您双击生成的 .svclog 文件时,Microsoft Service Trace Viewer 将启动,向您显示服务正在执行的操作。

        ib.

        【讨论】:

        • 没有办法通过断点调试并遍历代码吗?
        • 我从不在同一个 Web 项目中托管我的服务,因此我能够毫无问题地调试 WCF 服务。尝试在断点之前插入“Debugger.Launch()”。这应该会生成可以在 Visual Studio 的新实例中运行的调试器。
        猜你喜欢
        • 1970-01-01
        • 2013-09-20
        • 2019-03-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多