public UpdatePath ( string path ) : |
||
path | string | |
Результат |
public WorkStep UpdatePath(string path)
{
var parentPath = WorkflowPath.GetParentPath(path);
return new WorkStep(path, parentPath, _ordinal, Type, WorkItemClass, Title, WipLimit);
}
private void MoveWorkStepRecursively(WorkStep stepToMove, WorkStep toStep) { var leafDirectory = WorkflowPath.GetLeafDirectory(stepToMove.Path); var newPath = WorkflowPath.CombinePath(toStep.Path, leafDirectory); var newStep = stepToMove.UpdatePath(newPath); _workflowRepository.CreateWorkStep(newStep); foreach (var workItem in _workflowRepository.GetWorkItems(stepToMove.Path)) { _workflowRepository.UpdateWorkItem(workItem.MoveTo(newStep,_timeSource.GetTime())); } foreach (var childWorkStep in _workflowRepository.GetChildWorkSteps(stepToMove.Path)) { MoveWorkStep(childWorkStep, newStep); } _workflowRepository.DeleteWorkStep(stepToMove.Path); }