关于 Windows Phone 上的 wpf:WCF

WCF on Windows Phone

我的桌面应用程序(WPF 服务器)想通过 WCF 与 Windows Phone 通信。我更喜欢 .net tcp。

我想我需要三个项目,分别是WPF serverWP clientContracts。 Contracts 项目是 Windows Phone 类库,针对 WP8.0。 Contracts 项目定义了两个类,interface IPhoneclass PhoneClient: ClientBase<IPhone>, IPhone。 WP客户端的目标也是8.0。 WPF 服务器有对 Contracts 的引用。

Visual Studio 在 WPF 服务器项目中没有显示错误。但是当我构建 WPF 服务器时,VS 说

could not find System.ServiceModel, Version=2.0.5.0, Culture=neutral,
PublicKeyToken=31bf3856ad364e35

。错误发生在我使用 PhoneClient.

的地方

我该如何解决这个问题? Windows Phone 是否支持 WCF?


  • Windows Phone 绝对支持 Wcf
  • 不需要合约库。如果您创建 wcf 服务器,您可以在 windows phone 项目和 Visual Studio 中添加服务引用,它将自动为您生成数据合同类。
  • 如果你想在 wpf 和 wp 应用程序之间共享数据契约库,你应该选择可移植库,而不是 wp 或 wpf 类库。
  • 合同库不得包含服务合同的实现,在您的情况下是 PhoneClient 类。它应该只包含服务接口和数据契约类(方法输入和输出)。
  • 我不知道你是如何得到错误信息的,但是 System.ServiceModel, Version=2.0.5.0 是旧的。确保在 wpf 和 wp 项目中都添加了对 System.ServiceModel 程序集的最新版本的引用。在合同库中不需要