Silverlight 2 beta 2 中目前不支持共享 WCF 的客户端类型

在调用多个 WCF Service 的时候经常会遇到的一个问题是,某些同样的类型因为在不同的 Service 里用到,就被重复生成了好几个版本的代理类型,分别处在不同的名称空间下。

这样,如果一个操作需要同时调用几个 Service,就会面临冲突,假设 A 和 B 是因为不同的 WCF Service 生成的同一个类型的不同代理。那么只有通过代码把 A 的数据复制到 B. 这样显然很麻烦。

WCF 客户端类型共享可以通过创建一个专门的类库项目来实现,在该类库中用“添加服务引用”来生成客户端代理。
并且,让这个类库引用你需要共享的类型所在的 Assembly.

但因为 Silverlight 程序只能引用 Silverlight 的类库,它和 WCF 服务中调用到的类型处在不同的 .NET Framework.
这样就导致了“在代理的类库项目添加要共享的类型所在的 Assembly”这个步骤没法实现。因而无法共享客户端代理类型。

期待这个问题可以在 2.0 正式发布时得到解决吧。

原文地址:https://www.cnblogs.com/RChen/p/1252664.html