public static PERSPECTIVE_VIEW UpdateView(SQM.Website.PSsqmEntities ctx, PERSPECTIVE_VIEW view, string updateBy) { try { if (view.STATUS == "D") { ctx.DeleteObject(view); } else { view = (PERSPECTIVE_VIEW)SQMModelMgr.SetObjectTimestamp((object)view, updateBy, view.EntityState); if (view.EntityState == EntityState.Detached || view.EntityState == EntityState.Added) { view.STATUS = "A"; ctx.AddToPERSPECTIVE_VIEW(view); } foreach (PERSPECTIVE_VIEW_ITEM vi in view.PERSPECTIVE_VIEW_ITEM.ToList()) { if (vi.STATUS == "D" || vi.ITEM_SEQ < 1) { ctx.DeleteObject(vi); } else { if (vi.EntityState == EntityState.Detached || vi.EntityState == EntityState.Added) { vi.STATUS = "A"; vi.CALCS_SCOPE = view.PERSPECTIVE; ctx.AddToPERSPECTIVE_VIEW_ITEM(vi); } } } } ctx.SaveChanges(); } catch (Exception e) { //SQMLogger.LogException(e); } return(view); }