-1

我是新来的WebAPI。我有4个实体:MVC WebAPI with SPA

  1. 位置
  2. 服务
  3. 项目
  4. 应用

我已看过一些的WebAPI教程。它们似乎在每个处理单个实体的API控制器中都有CRUD方法。我需要的一个功能是模拟级联下拉和级联更新,其中位置确定服务范围。每个服务确定服务项目列表。每个项目可以用在应用程序列表中。问题是

  1. 我是否使用CRUD方法创建4个API控制器?
  2. 我需要一个表单上的所有4个对象作为允许多选的列表框。
  3. 除了4列表框之外,如何显示保存到数据库表中的选定值的组合列表?
  4. 哪个JavaScript库或框架最适合SPA(单页应用)?我目前正在倾向于Backbone.js和HotTowel.js。

谢谢。

回答

2

您可以将您的服务作为OData service公开。如果你想支持过滤,那么你应该使用单独的OData NuGet packagedevelop your controllers。在这种情况下,四个控制器将适合。

然后,您可以使用客户端丰富的数据库(如breeze.js)直接向OData服务发出构建请求。然后,您将使用MV* client side framework在客户端视图模型和UI元素之间提供双向绑定。

Hot Towel不是JavaScript库,它是一个Visual Studio扩展程序,它允许您创建一个新项目作为SPA的起点。该模板需要Visual Studio 2012和ASP.NET Web Tools 2012.2更新。

它使用breeze.js,Knockout.js进行绑定,并使用Durandal.js进行导航,生命周期和视图组合。