给定以下 EF 模型:
public class Order
{
public int OrderId { get; set; }
public string CustomerName { get; set; }
public virtual ICollection<OrderDetail> OrderDetails { get; set; }
...
}
// OrderDetail has a composite key of OrderId and ProductId
public class OrderDetail
{
public int OrderId { get; set; }
public int ProductId { get; set; }
public int Quantity { get; set; }
...
}
在我的 MVC4 Web 应用程序中(使用 HotTowel SPA 模板 - Durandal、Breeze.js、Knockout 等),我创建了一个用于创建新订单和添加/删除 OrderDetail 项目的视图。
在 datacontext.js 中,我有以下内容:
var createOrder = function() {
return manager.createEntity('Order');
};
在我的 viewmodel orderadd.js 中,我调用了 createOrder:
order = ko.observable();
activate = function() {
initLookups();
order(datacontext.createOrder());
}
问题:如何为 Order 对象创建/添加新的 OrderDetail 项目并将整个新的 Order 对象保存在数据库中?