2012-11-08 122 views
1

我开始评估BreezeJS以将其用于ASP.NET WebAPI项目。首先,我很高兴找到一个项目,以可查询的方式将我的MVC数据公开给OData和AJAX客户端,但随后我遇到了许多烦人的事情,我不知道应该放在哪里,就BreezeJS库架构而言 - 策略Breezejs WebAPI OData vs Microsoft ASP.NET Web API OData

  • BreezeJS决定不提供服务的文件(与顶级藏品)
  • 它也没有提供一个基于标准的$元网址
  • 它有一个OData的像元数据服务,仅与兼容BreezeJS客户端(好点JSON格式)
  • 请求/响应JSON负载完全不符合OData

所以,一切的一切,我可以用我的消费MVC项目的唯一客户端是BreezeJS.js甚至没有datajs.js上的方式,类似于OData的,但不是OData的(符合标准的客户端将无法承认它 - 为什么做一些类似标准的东西,但它不符合它)。

现在有一个微软支持的项目叫做微软ASP.NET Web API OData包,它确实支持所有上述场景,但是这是在alpha阶段,尽管围绕它的社区热度非常高。尽管处于早期阶段,我已经广泛尝试过它,并且它的魅力非常好。

所以问题是显而易见的:我应该选择BreezeJS(他们声称是否在RC)并且失去标准兼容性,或者早期承担微软项目的风险并保持跟踪OData?

我的目标是通过AJAX将我的MVC API发布到网站和移动设备上。

更新:我发现,MS已经更新了其WebAPI OData project recently

+0

OData支持包现在实际上称为ASP.NET秋季更新,可以从这里下载:http://www.asp.net/vnext/overview/fall-2012-update –

+3

不幸的是,StackOverflow的政策关闭这样的问题。我相信像这样的问题对于开发人员来说非常重要,即使这是一个关于使用哪个代码库而不是处理任何自定义代码的问题的问题。 –

+0

也许尝试移动到[程序员](http://programmers.stackexchange.com/)?它看起来更合适。 –

回答

2

是啊,我们也有过类似的经验,我们希望访问我们从Excel和IOS但Breezejs它没有工作的数据,所以我们改为微软封装它工作得很好。