У меня есть два объекта: счет-фактура и счет-фактура.Entity Framework: Связанные с обновлением объекты
Счет-фактура имеет член счета-фактуры.
Когда я создаю объект obcjet, он работает так, как ожидалось.
Структура вставляет строки счета-фактуры и счета-фактуры в базу данных.
$.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();
...
Я также хотел бы обновить счет-фактуру и связанные с ней счета-фактуры.
$.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();
...
Но структура обновляет только счет-фактуру.
Как я могу также обновить связанные объекты?
Моя модель выглядит следующим образом
EDIT: Решение http://michele.berto.li/update-of-an-object-and-related-records-with-backbonejs-and-net-mvc
ОБНОВЛЕНО LINK http://michele.berto.li/update-of-an-object-and-related-records-with-backbone-js-and-net-mvc/
У меня есть элемент управления 'HttpPost', который обрабатывает представление сложной формы, состоящей из объекта и его навигационных свойств, которые могут быть коллекциями с некоторыми элементами, отсутствующими из-за удаления, некоторыми новыми элементами, некоторыми измененными и то же самое с одним объектом nav. свойства, которые могут быть либо нулевыми (свойство FK имеет значение NULL), либо изменено на новый объект, либо изменены существующие, либо многие другие параметры. Есть ли единый способ управления связанными объектами в EF ??? Все это начинает путаться с отсутствием четкого и единого способа выполнения таких операций. – Shimmy
любые новости по этому вопросу, как и в 2015 году? Любой способ легко обновить весь график, включая удаление связанных объектов? – Shimmy