public bool Delete(DataRepository observedData)
        {
            var usersOfObservedData = allUsersOfObservedData(observedData).ToList();

            if (usersOfObservedData.Any())
            {
                throw new CannotDeleteObservedDataException(observedData.Name, usersOfObservedData.Select(typeNamed).ToList());
            }

            var viewResult = _dialogCreator.MessageBoxYesNo(Captions.ReallyDeleteObservedData(observedData.Name));

            if (viewResult == ViewResult.No)
            {
                return(false);
            }

            var removeCommand = new RemoveObservedDataFromProjectCommand(observedData).Run(_executionContext);

            _executionContext.AddToHistory(removeCommand);
            return(true);
        }