【问题标题】:What technology should I use to develop web services accessible from Windows Phone 7我应该使用什么技术来开发可从 Windows Phone 7 访问的 Web 服务
【发布时间】:2010-06-22 13:14:11
【问题描述】:

今天早上,我觉得自己很愚蠢。我创建了一个简单的 WCF 服务,只需编译和运行默认的 WCF 服务应用程序 (.NET 3.5)。然后我尝试向 Windows Phone 7 应用程序添加服务引用,但收到警告:

Custom tool warning: Endpoint 'WSHttpBinding_IService1' at address 'http://localhost:50133/Service1.svc' is not compatible with Silverlight 3. Skipping...

我对为 Windows Phone 7 制作 Web 服务的“入门”指南的搜索似乎都结束于关于 WCF RIA 服务有多棒以及它们(还)不适用于 Windows Phone 是多么不幸的文章7.

我的目标是在 WCF 服务中使用 LINQ to SQL 或实体框架来创建我的 Windows Phone 7 应用程序可以访问的服务。该服务可以托管在共享托管提供商上,因此我对 IIS 设置几乎没有控制权,因此我什至考虑制作 .asmx 服务。如果简单且不昂贵,我也可以在 Azure 中托管它。

我知道这是一个相当主观的问题,但我应该走哪条路?构建 Windows Phone 7 应用程序的“服务端”的最简单和推荐的方法是什么?如果是 WCF,我上面的尝试有什么问题?

【问题讨论】:

    标签: web-services windows-phone-7


    【解决方案1】:

    第 9 频道上题为“使用推送通知”的动手实验将引导您创建 WCF 服务并使用 Windows Phone 7 Silverlight 应用程序连接到它。

    您可以在以下位置找到包含源代码的实验室:http://channel9.msdn.com/learn/courses/WP7TrainingKit/WP7Silverlight/UsingPushNotificationsLab/

    我同意 John 的观点,您可能只需要使用 basicHttpBinding 而不是 wsHttpBinding。

    【讨论】:

      【解决方案2】:

      我强烈建议在 WP7 中使用 OData。您可以从http://odata.org 下载 WP7 OData SDK 开始使用。网络上有很多编程资源和示例,包括

      前 2 个是来自 MIX10 的特别有用的视频。

      HTH!
      克里斯

      【讨论】:

        【解决方案3】:

        我在此主题上看到的最新指导是 Tech Ed 的 Rob Tiffany 在他的 WPH306 演讲中提出的。

        提供了一种非常直接的方法,其中包含一些在移动平台提供的部分连接环境中操作的良好技术。

        还清楚地检查了使用 JSON、OData、XML 传输数据的相对优点。

        ps:如果您希望支持将 WCF RIA 服务引入 WP7,请随时查看此post(如果您还没有的话)。

        【讨论】:

          【解决方案4】:

          只有一种技术可用于在 .NET 平台上开发 Web 服务 - WCF。

          您可能需要了解一些关于 WCF 而不是谷歌搜索的知识。特别是,您可能只需要使用 basicHttpBinding 而不是 wsHttpBinding(默认值)。除非您花时间了解什么是绑定以及 Silverlight 支持哪些绑定,否则您永远不会发现这一点。

          【讨论】:

            【解决方案5】:

            您可以使用 MVC 2 网站和 JSON 响应为您的网站构建轻量级服务 API,而无需 WCF 开销或添加任何 ClientAccess 文件。

            缺点是您需要复制代码以将您的响应序列化到 Win Phone 7 类库中。我有一些full fledged examples of using an MVC 2 website,包括authenticating requests using a key/secret architecture

            【讨论】:

              猜你喜欢
              • 2017-01-14
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 1970-01-01
              • 2011-07-20
              • 1970-01-01
              • 2011-01-22
              • 1970-01-01
              相关资源
              最近更新 更多