我有一个Silverlight应用程序通过WCF服务与服务器端进行通信。最初,我拥有主要Silverlight应用程序中的所有内容,但现在我想将我们的一些类分解为单独的Silverlight类库项目。然而,这给了我一些奇怪的问题...Silverlight类库中的WCF服务参考
我想将WCF通信的类别分解到单独的项目。所以我:
- 创建一个新项目; Silverlight类库
- 将我的Silverlight应用程序中的类移至我的Silverlight类库
- 由于我不再从应用程序调用该应用程序,因此删除了应用程序中的服务引用。
- 从类库项目中添加了一个服务引用。
现在 - 编译很好,我得到了类库中的服务东西的智能感知,所以它似乎很好。我还更新了服务并获得了类库中的更新。 但运行做一个服务调用给出以下错误,当它失败的应用程序时:
InvalidOperationException异常是由用户代码未处理
找不到引用合同“MyServiceReference.IMyService”在默认终结点元素ServiceModel客户端配置部分。这可能是因为没有找到适用于您的应用程序的配置文件,或者因为在客户端元素中找不到匹配此合同的端点元素。
好像找不到服务,但为什么?我认为从Silverlight类库中获取服务引用应该没有问题,因为它允许我添加一个?
Thx - 解决了它!通过复制类库项目中的ServiceReferences.ClientConfig内容或在应用程序项目中添加相同的服务引用来解决。所以我认为它是应用程序本身将处理服务请求,即使它是在其他地方定义的?但是,这感觉有点hacky ..是否可以在类库项目中使用服务引用? – stiank81 2009-08-11 09:48:49
哦,当然 - 我想说,在类库中提供服务引用是非常实用的。只要记住把他们的配置放在主应用程序 - 这就是全部:-) – 2009-08-11 10:32:03
好:-) Thx的答案! – stiank81 2009-08-11 11:02:06