如何使用Silverlight实现ChannelFactory和WCF程序集共享?

时间:2012-04-25 23:41:47

标签: wcf silverlight .net-4.0 channelfactory

首选的WCF实现是使用程序集共享和ChannelFactory - 合同的单个实例意味着任何服务更改只需要在一个地方进行,没有代理可以更新或维护等。

我想用Silverlight实现ChannelFactory。我已经有足够的RIA Domain Services等。

我的Silverlight应用程序只能引用Silverlight程序集 - 足够公平。所以我将ServiceContract接口放在Silverlight程序集中,并从我的服务器和客户端引用它。

问题是,当我去运行我的服务器(在这种情况下是IIS托管)时,我得到了

  

无法加载文件或程序集'System.ServiceModel,Version = 2.0.5.0,Culture = neutral,PublicKeyToken = 31bf3856ad364e35'或其依赖项之一。该系统找不到指定的文件。

包含ServiceContract的Silverlight程序集使用与我的服务器使用的不同版本的System.ServiceModel构建(.NET 4.0)。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:2)

这与silverlight和.net不兼容,部分是人为的,如果你知道怎么做,可以解决。

http://www.netfxharmonics.com/2008/12/Reusing-NET-Assemblies-in-Silverlight

答案 1 :(得分:1)

简单地说,

使用Portable Class Libraries;