1

我正在为我的 Web 应用程序使用以下堆栈 MVC5 + WebAPI 2.2 + EF6 + AngularJS。今天,我尝试将其合并ODataAngular BreezeJS我的应用程序中,并且它对其中一个实体运行良好。

目前,我有大约 45 个表,可以转换为 45 个模型类。

在 Web API 中,我可能只有 5-10 个控制器来处理 45 个模型的 CRUD 操作,使用基于我传递的变量的 switch 语句,如entityName, operationName

但是,在 OData 中,我需要 45 个由 VS 搭建的控制器。有什么方法可以利用 OData 的好处,例如querying/paging/patching无需为每个模型类创建控制器?

4

2 回答 2

4

您使用实体框架吗?如果是这样,您可以尝试使用 RESTier。RESTier建立在 Web API OData 之上,它只需要一个控制器就可以使所有基本的 CRUD(包括查询)工作。

您可以从教程http://odata.github.io/RESTier/Getting-Started-Part-1/中了解更多信息,Northwind 的示例位于https://github.com/OData/RESTier/tree/master/ src/Microsoft.Restier.Samples.Northwind

于 2015-03-30T06:45:38.107 回答
0

我为一家电子商务公司的管理系统做了这个。大约有 20 个表和相关的 api 控制器,其中一些表有 10,000 条记录,并且所有控制器都启用了 odata 位。到目前为止,在 Azure SQL 和网站上对我来说似乎还不错。我为每个模型/实体使用一个控制器,你为什么反对这样做?

于 2015-03-29T07:11:20.310 回答