wcf - 带有 RIA WCF 项目的 Silverlight 无法添加常规 WCF 服务引用

标签 wcf silverlight visual-studio-2012 ria

我不知道这是否是一个错误/功能,但我需要找到一种方法让它工作。

要重新创建,请使用 VS2012,打开一个启用 RIA 服务的新 SL5 项目。创建另一个项目,添加一个简单的 WCF 服务(或启用 SL 的 WCF)并添加一个接受或返回一个简单对象的方法(我有一个带有一个字符串属性的对象)。尝试将此作为服务引用添加到您的 SL 项目。您将在警告中收到此错误信息:

Custom tool warning: No endpoints compatible with Silverlight 5 were found. The generated client class will not be usable unless endpoint information is provided via the constructor.

实际上并没有生成任何生成的代码。

我发现如果我从服务方法中删除对象并改用简单的字符串/int/bool,则添加引用就好了。此外,如果我将相同的服务添加到没有 RIA 的常规 SL 应用程序中,一切都会像您期望的那样工作。一旦我在该服务正在运行的应用上启用 RIA,并更新服务引用,生成的代码就会再次消失。

我记得这曾经可以工作,因为我的项目同时使用了 RIA 和外部 WCF 服务。这是一个新的 VS2012 东西吗?有没有办法解决这个问题?

谢谢,

艾尔

最佳答案

我可以重复这个问题,而且它似乎只有在 Silverlight 客户端在其引用的程序集中具有 2 个 System.ServiceModel.DomainServices.Client 和 System.ServiceModel.DomainServices.Client.Web 程序集时才会发生。并且仅当它以 SL 5 为目标时。

如果您的情况允许,我建议您尝试两种解决方法:

1) 将 Silverlight 应用程序更改为面向 Silverlight 4,而不是 5,或者 2) 右键单击​​服务引用并要求配置它。 单击复选框以“在指定的引用程序集中重用类型” 并选择所有集合除了上面提到的2个。

这似乎是与 SL 5 或 VS2012 相关的错误。如果我找到更满意的答案,我会重新发布。

关于wcf - 带有 RIA WCF 项目的 Silverlight 无法添加常规 WCF 服务引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13266508/

相关文章:

c# - 如何通过互联网推送数据?

silverlight - XAML clr-namespace - 使用不兼容?

windows-8 - 我可以使用不同的用户帐户启动 Windows 8 设备模拟器吗?

.net - 保护 NamedPipes WCF 服务的最简单方法?

c# - 在 WCF 中自定义 SOAP header 命名空间前缀

wcf - 如何将字节数组从 Silverlight 保存到文件

c# - 如何进行 WCF 序列化以在通用字典上保留非默认比较器?

c# - 银光端口

visual-studio-2012 - Visual Studio 探查器给出错误 VSP1033(不包含可识别的可执行文件)

sql - SQL脚本错误: Only one statement is allowed per batch