【问题标题】:Need guidance in calling WCF service from Silverlight 4从 Silverlight 4 调用 WCF 服务需要指导
【发布时间】:2011-05-07 23:40:48
【问题描述】:

好的,伙计们,我呼吁你们的综合智慧。我有一个带有 Silverlight 应用程序的 Web 应用程序,它调用 ria 服务。 ria 服务是在 Web 应用程序中定义的,其他一切都只是花花公子。

问题是这样的。

据我了解,为了让 silverlight 应用程序能够对话并了解 ria 服务是什么,您需要为该服务添加服务引用。服务引用定义 ria 服务并设置连接绑定。它添加的文件之一是ServiceReference.ClientConfig,其中包含连接绑定。在此应用程序的开发过程中,它就是这样设置的。它在本地和开发服务器上运行良好。

不幸的是,在部署到客户内部服务器时出现了问题。在这一点上,当我的同事继续部署时,我正在处理其他项目。他很快对正在发生的愚蠢错误感到沮丧,并寻求了一些帮助。这个开发人员进来了,尽管它开始工作了,但为了这样做,他从 silverlight 项目中删除了服务引用,但留下了 ServiceReference.ClientConfig,它指向 Web 应用程序中服务的位置(但仅此而已,不关于服务功能的定义或解释,我不确定 silverlight 应用程序应该如何知道如何使用它..)。这在我的同事工作站上完美运行,他已将此版本部署到客户端服务器上。

当我打开项目时,它根本没有运行。原因是它不知道我在代码中使用的是什么服务。具体来说,它不知道这是哪里(为了澄清而更改了名称):

Imports SilverlightApp.ServiceReference.WebApp.Service

我已经清理了解决方案,完全删除并从源代码管理中获取了最新版本,首先构建了 Web 应用程序并确保 asp.net 开发服务器正在运行,以便正确解析 ServiceReference.ClientConfig 中的地址。但是,唉,它仍然不知道Imports SilverlightApp.ServiceReference.WebApp.Service 是什么。

因此,为了让它在我的工作站上运行,我添加了 ServiceReference,但保留了当前的连接绑定,以便它与 Web 应用程序 Web 配置中的端点匹配。并将导入语句更改为Imports SilverlightApp.ServiceReference,一切正常。

这种疯狂的原因是什么?!?!

【问题讨论】:

    标签: vb.net silverlight wcf


    【解决方案1】:

    您所说的所有事情都与 WCF 服务而不是 WCF RIA 服务有关。在您的客户端应用程序中使用它们时,它们以完全不同的方式工作。

    WCF 服务需要服务引用和 ServiceReference.ClientConfig。

    WCF RIA 服务没有。 WCF RIA 服务的链接在底部 Silverlight 选项卡的 silverlight 项目属性中设置。构建时,它将在 Generated_Code 文件夹中生成客户端上下文代码。显示所有文件,您将看到它。

    希望有帮助吗?

    凯文

    【讨论】:

    • 啊哈。那会很有意义。我的同事确实有 Generated_WCF_Code 文件夹,而我没有。但是,我已经在项目属性中设置了链接,它仍然不允许我构建
    • 什么是构建错误?您是否安装了所有 WCF RIA 服务工具?此外,查看您的网站项目设置并检查您的 Silverlight 应用程序是否列在 Silverlight 应用程序选项卡中。
    • 当我尝试实例化服务客户端并对其进行调用时,会发生构建错误。当我在工作站上打开项目时,导入引用无法解析。是的,网络项目设置是正确的,我确实有 ria 服务工具包。并感谢您的帮助:)
    猜你喜欢
    • 2010-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多