实体框架 java_实体框架:更新相关实体

我有两个实体:Invoice和InvoiceDetail .

Invoice有一个InvoiceDetails成员 .

当我创建一个obcjet时,它按预期工作 .

框架在数据库中插入Invoice和InvoiceDetail行 .

$.ajax({

url: "/Invoices/Index",

data: JSON.stringify({

InvoiceDetails: [{

Description: "1"

}, {

Description: "2"

}]

}),

contentType: "application/json",

type: "POST"

});

[ActionName("Index")]

[HttpPost]

public JsonResult Post(Invoice invoice)

{

db.Invoices.AddObject(invoice);

db.SaveChanges();

...

我还想更新发票和相关的InvoiceDetails .

$.ajax({

url: "/Invoices/Index/1",

data: JSON.stringify({

Id: 1,

InvoiceDetails: [{

Id: 1,

Description: "1*"

}, {

Id: 2,

Description: "2*"

}]

}),

contentType: "application/json",

type: "PUT"

});

[ActionName("Index")]

[HttpPut]

public JsonResult Put(Invoice invoice)

{

db.Invoices.Attach(invoice);

db.ObjectStateManager.ChangeObjectState(invoice, EntityState.Modified);

db.SaveChanges();

...

但框架仅更新发票 .

我如何更新相关实体?

我的模型看起来像这样

0eeedf29484f735536bdd051a89db26a.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值