/// <summary>
        /// Saves the chagnes on the controller.
        /// </summary>
        public void Save()
        {
            IReadOnlyCollection <KeyValueChange> changes = _changes.MakeReadOnly();

            if (changes.Any())
            {
                SafeExecute(() => _controllerCommander.SaveChanges(_moduleName, Id, _changes));
            }
            Reset();
        }