Recommendations for .NET Web Service Format/Protocol for Android, iPhone, etc. integration

后端 未结 4 1717
夕颜
夕颜 2021-02-15 16:22

I am building a web service for my ASP.NET MVC 3 website. Ideally I would like all clients (my web pages, iphone application, android application, windows phone 7 application, e

相关标签:
4条回答
  • 2021-02-15 17:09

    I have almost same situation and what am I doing is, I am making WCFrest services for android and iphone.

    In terms of the security, I am using role based membership provider. So i have created a user for the mobile clients with the role of 'Mobile clients' and give the user id (guid) as an 'api key' to the android and iphone developer.

    The iphone and android developer has to send the 'api key' in the header of the request.

    so before executing any method in my wcf, i am checking the api key and also checking if the request is from an android or iphone device.

    I hope this will help you a little to plan your development..:)

    0 讨论(0)
  • 2021-02-15 17:16

    I would suggest a REST(ful) service with JSON.

    Both Android and iOS have libraries that support parsing XML and JSON, however the JSON libraries are a bit easier to use and are a little bit faster.

    With a little more effort you could allow your service to provide/consume both XML and JSON.

    It would be preferable to avoid SOAP as it is more verbose and not as suitable for the more bandwidth/battery sensitive mobile devices.

    0 讨论(0)
  • 2021-02-15 17:21

    Try using ksoap2 and have your WCF services use the basicHTTP binding.

    If you have only primitive types as parameters, this should very easy. With some work you can also use it for more complex types.

    0 讨论(0)
  • 2021-02-15 17:22

    This would be a great opportunity for you to try out WCF Data services, together with Entity Framework. You can build it very fast, and it exposes your information model using the OData international standard in both XML and JSON flavor. The interface is accessible throught REST. No problems interacting with any front-end technology, fat, web or mobile clients.

    AND, you have all the benefits of re-using your C# .NET knowledge, visual studio and created assemblies to also make more tighter integration with Windows applications if you need to. It certainly did the trick for me!

    So:

    1. Create your application model using Entity Framework. Either database first if you already have a physical datamodel, or model first is you are starting from scratch.
    2. Expose the created information model using WCF dataservices (5 lines of code)

    You can find a walkthrough at: http://msdn.microsoft.com/en-us/magazine/ee336128.aspx

    Happy coding!

    0 讨论(0)
提交回复
热议问题