public ContentResult Save(int?id, FormCollection actionValues) { var action = new DataAction(actionValues); var changedEvent = DHXEventsHelper.Bind <Event>(actionValues); var entities = new DBOModel(); try { switch (action.Type) { case DataActionTypes.Insert: entities.Events.Add(changedEvent); break; case DataActionTypes.Delete: changedEvent = entities.Events.FirstOrDefault(ev => ev.id == action.SourceId); entities.Events.Remove(changedEvent); break; default: // "update" var target = entities.Events.Single(e => e.id == changedEvent.id); DHXEventsHelper.Update(target, changedEvent, new List <string> { "id" }); break; } entities.SaveChanges(); action.TargetId = changedEvent.id; } catch (Exception a) { action.Type = DataActionTypes.Error; } return(new AjaxSaveResponse(action)); }