Я пытался понять, почему это не работает.
У меня есть веб-сервис с несколькими методами. Один из них возвращает элемент сущности, а другой ожидает элемент этой же сущности и должен обновить контекст и базу данных изменениями, сделанными на стороне клиента.
код "get" выглядит следующим образом
public InvoiceHeader getHeader(long pIdHeader){
try{
InvoiceHeader ih = lContext.InvoiceHeaders.SingleOrDefault(x => x.idHeader == pIdHeader);
return ih;
} catch (Exception exp){
//log error
}
}
Я попробовал несколько подходов, чтобы заставить это работать. Вот те, которые, я думаю, наиболее близки к ответу: s
(1):
public bool submitChanges(InvoiceHeader iHeader){
try{
InvoiceHeader ih = getHeader(iHeader.idHeader);
lContext.InvoiceHeaders.Context.Refresh(RefreshMode.KeepChanges, iHeader);
lContext.SubmitChanges();
return true;
} catch (Exception exp) {
//log error
return false;
}
}
другой подход был
(2)
public bool submitChanges(InvoiceHeader iHeader){
try{
lContext.InvoiceHeaders.Attach(iHeader, true);
lContext.SubmitChanges();
return true;
} catch (Exception exp) {
//log error
return false;
}
}
В обоих случаях все работало нормально, чтобы "вернуть истину", но обновление не было сделано. Посоветуйте пожалуйста что я тут делаю не так.
Если вам нужна дополнительная информация, дайте мне знать.
Спасибо всем
Рикардо.