/// <summary> /// Удалить инстанс /// </summary> /// <param name="instanceName">Имя инстанса</param> /// <returns>Существал ли</returns> public override bool RemoveInstance(string instanceName) { NetInstanceInMultiInstanceCategory inst = null; if (_instances.TryRemove(instanceName, out inst)) { inst.OnRemoveFromMultiInstanceCategory(); _isChildInstancesChanged = true; return(true); } return(false); }
/// <summary> /// Получение или создание инстанса /// </summary> /// <param name="instanceName">Имя инстанса</param> /// <returns>Инстанс</returns> public override InstanceInMultiInstanceCategory this[string instanceName] { get { NetInstanceInMultiInstanceCategory result = null; if (!_instances.TryGetValue(instanceName, out result)) { _isChildInstancesChanged = true; result = _instances.GetOrAdd(instanceName, new NetInstanceInMultiInstanceCategory(this, instanceName)); } return(result); } }