/* * View. */ public void OnViewAdd(IView view) { if (_mediators.ContainsKey(view)) { throw new MediationException(MediationExceptionType.ViewInstanceAlreadyAdded, view.GetType().FullName); } if (!_bindings.TryGetValue(view.GetType(), out var binding) && _mode == MediationMode.Strict) { throw new MediationException(MediationExceptionType.MediationBindingNotFound, view.GetType().FullName); } _injectionBinder.Construct(view, true); if (TryCreateMediator(binding, out var mediator)) { view.SetMediator(mediator); InjectViewAndDependencies(binding, mediator, view, true); } _mediators.Add(view, mediator); }