diff --git a/server/AyaNova/biz/WorkOrderBiz.cs b/server/AyaNova/biz/WorkOrderBiz.cs index d341d75e..464d1def 100644 --- a/server/AyaNova/biz/WorkOrderBiz.cs +++ b/server/AyaNova/biz/WorkOrderBiz.cs @@ -955,7 +955,10 @@ namespace AyaNova.Biz // internal async Task ItemPutAsync(WorkOrderItem putObject) { - var dbObject = await ItemGetAsync(putObject.Id, false); + //Note: this is intentionally not using the getasync because + //doing so would also fetch the children which would then get deleted on save since putobject has no children + var dbObject = await ct.WorkOrderItem.AsNoTracking().FirstOrDefaultAsync(z => z.Id == putObject.Id); + if (dbObject == null) { AddError(ApiErrorCode.NOT_FOUND, "id"); @@ -972,6 +975,9 @@ namespace AyaNova.Biz await ItemValidateAsync(putObject, dbObject); if (HasErrors) return null; ct.Replace(dbObject, putObject); + + + try { await ct.SaveChangesAsync();