【发布时间】:2012-02-10 10:28:11
【问题描述】:
我有一个 Silverlight 4 应用程序,它与一个“管理器”类对话,它与一个 WCF 服务 (.net 4) 对话,它使用 Microsoft.ApplicationBlocks.Data 库与我的 SQL 数据库对话。
我的问题是异常不会冒泡到 Silverlight 应用程序。
发生的情况是,对数据库的插入失败,创建一个 SQLException,然后将错误进一步抛出到 Manager 使用的生成的服务引用代码,在完成的事件处理程序中,发现 Error 属性是不为空。这会向 Silverlight 应用程序抛出一个事件,该应用程序会向用户显示一条消息,说明发生了错误。
这在我在本地调试我的应用程序时有效,但当应用程序在实时/生产服务器上时静默失败,不会显示错误消息。
如果我从服务器(不是本地)上运行的 wcf 服务生成服务引用,并使用我的 Silverlight 应用程序的本地实例,它也可以正常工作,这让我认为服务引用中发生了错误(生成的代码)和 Silverlight 通信。
该服务托管在“手动编码”主机应用程序中,服务器上的 Silverlight 应用程序托管在 IIS 中。他们都使用http而不是https。
我搜索了互联网,但没有发现与这种情况有关的任何信息。我不会杀死对象,因此可以防止将异常返回给不存在的对象。
简而言之,管理器在我的本地系统上正确接收并引发了一个事件,但在部署到服务器上时却没有。
请需要 WCF 专家!
【问题讨论】:
标签: wcf silverlight