What technology should I use to develop Web services accessible from Windows Phone 7


This morning, I feel stupid. I created a simple WCF service, just compiling and running the default WCF Service Application (.NET 3.5). I then tried adding a service reference to a Windows Phone 7 application but got a warning:

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

My searches for a "getting started" guide to making web services for Windows Phone 7 seems to all end on articles about how great WCF RIA Services are and how unfortunate it is that they don't work (yet) for Windows Phone 7.

My goal was to use either LINQ to SQL or Entity Framework in a WCF Service to make a service that my Windows Phone 7 applications will access. This service could be hosted on a shared hosting provider, so I have little control over IIS settings, thus I even considered making .asmx services. I could also host it in Azure if easy and not to expensive.

I know this is a rather subjective question, but what path should I take? What is the simplest and recommended way to build the "service side" of a Windows Phone 7 application? If it is WCF, what's wrong with what I tried above?

The hands-on lab on channel 9 titled "Using Push Notifications" walks you through creating a WCF service and connecting to it using a Windows Phone 7 Silverlight application.

You can find the lab including the source code at: http://channel9.msdn.com/learn/courses/WP7TrainingKit/WP7Silverlight/UsingPushNotificationsLab/

And I agree with John that you probably just need to use basicHttpBinding instead of wsHttpBinding.