代码之家  ›  专栏  ›  技术社区  ›  Martin Plante

我应该使用什么技术来开发可从WindowsPhone7访问的web服务

  •  0
  • Martin Plante  · 技术社区  · 14 年前

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

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

    我的目标是在WCF服务中使用linqtosql或Entity框架来创建一个我的windowsphone7应用程序可以访问的服务。这个服务可以托管在一个共享的托管提供程序上,所以我对IIS设置几乎没有控制权,因此我甚至考虑制作.asmx服务。我也可以把它放在Azure里,如果简单又不贵的话。

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

    5 回复  |  直到 14 年前
        1
  •  2
  •   TechPreacher    14 年前

    频道9上名为“使用推送通知”的实践实验室将指导您创建WCF服务并使用WindowsPhone7Silverlight应用程序连接到该服务。

    http://channel9.msdn.com/learn/courses/WP7TrainingKit/WP7Silverlight/UsingPushNotificationsLab/

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

        3
  •  1
  •   Mick N    14 年前

    我所看到的关于这个话题的最新指导是由技术教育部的罗伯·蒂凡尼在他的 WPH306 说话。

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

    ps:如果你想支持将WCF RIA服务引入WP7,请随意查看这个 post 如果你还没有。

        4
  •  0
  •   John Saunders Tony    14 年前

    在.NET平台上开发web服务只能使用一种技术—WCF。

    你可能需要学习一下WCF而不是google。特别是,您可能只需要使用basicHttpBinding而不是wsHttpBinding(默认设置)。除非您花时间了解什么是绑定,以及Silverlight支持什么绑定,否则您永远不会发现这一点。

        5
  •  0
  •   Jacob    14 年前

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

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