//public bool SaveCard { // get { // bool result = false; // MethodInfo saveCardMethodInfo = typeof(BaseCardControl).GetMethod("SaveCard", BindingFlags.NonPublic | BindingFlags.Instance); // if (saveCardMethodInfo != null) // result = (bool)saveCardMethodInfo.Invoke(document, new object[] { false }); // return result; // } //} public void ChangeStatus(string state) { IStateService StateService = context.ObjectContext.GetService <IStateService>(); IList <StatesStateMachineBranch> statesStateMachineBranch = StateService.FindLineBranchesByStartState(SystemInfo.State).ToList(); StatesStateMachineBranch branch = statesStateMachineBranch .Where(t => t.StartState == SystemInfo.State && t.BranchType == StatesStateMachineBranchBranchType.Line && t.EndState.DefaultName.Equals(state)).FirstOrDefault(); if (branch != null) { //смена статуса StateService.ChangeState(GetDocument, branch); } else { throw new Exception("Переход в состояние невозможен, так как данное состояние отсутствует"); } }