Android 从.net公开移动应用程序使用的服务的最佳方式

Android 从.net公开移动应用程序使用的服务的最佳方式,android,ios,.net,performance,windows-phone,Android,Ios,.net,Performance,Windows Phone,我将为iOS、Android和Windows Phone创建一个应用程序,该应用程序将公开我们目前正在重新开发的网站上提供的相同功能,其中一个主要功能是搜索功能。该网站以及所有层都是使用.net(4.5.2)和sql server构建的,我们需要公开移动应用程序使用的所有服务。好的是,应该由我来决定如何暴露它们,但我不确定使用哪种技术/协议最好。我被告知it应该满足的是性能/响应能力。我曾考虑将服务公开为WebAPI层,但我不确定这是否是实现这一需求的最佳方式 你推荐什么?有人经历过这种情况吗?

我将为iOS、Android和Windows Phone创建一个应用程序,该应用程序将公开我们目前正在重新开发的网站上提供的相同功能,其中一个主要功能是搜索功能。该网站以及所有层都是使用.net(4.5.2)和sql server构建的,我们需要公开移动应用程序使用的所有服务。好的是,应该由我来决定如何暴露它们,但我不确定使用哪种技术/协议最好。我被告知it应该满足的是性能/响应能力。我曾考虑将服务公开为WebAPI层,但我不确定这是否是实现这一需求的最佳方式


你推荐什么?有人经历过这种情况吗?

向现有web应用程序添加api层非常简单,我认为这非常适合您的需要。这样,您就可以用api基本上包装您现有的功能


看到这个了吗

因为您正在重新开发服务器端,所以我会仔细看一下。如果这对你不起作用,而且你需要更多定制开发的东西,我仍然会考虑使用Web API层进行Azure托管。WEB API无疑是这里的一种方式,因为它提供了一种简单的方法来将移动友好的JSON与你的服务之间的薄层交换。
顺便说一句,对于任何新的.NET开发,我都会选择

,因为您针对的是多个客户,您应该将您的业务公开为restful服务,以JSON的形式返回数据,而且我建议使用
OData
(开放数据协议)这是一个定义了构建和使用
RESTFul
API的最佳实践的
OASIS
标准

此外,
OData
还提供了有用的查询技术,例如,以下
URL
将返回系统中至少登记了一次旅行费用超过3000美元的前两名人员,并且只显示他们的名字和姓氏

?$top=2&$select=FirstName,LastName&$filter=Trips/any(d:d/Budget gt 3000)


有关
OData
的更多信息,请检查vNext是否仍在预览中,因为它与VS2015一起打包?我以为微软建议它还没有“生产准备就绪”?这将是正确的,直到它不是(很快)的那一刻,这就是Web API。。。它实现了小田@GregEnnis Web API与OData不是一对一的,但是您可以使用Web API公开OData服务,也就是说,我可以在不应用OData的情况下使用Web API