/// <summary> /// Initializes a new instance of the <see cref="ServiceLocatorRegistrationAttribute"/> class. /// </summary> /// <param name="interfaceType">Type of the interface.</param> /// <param name="registrationMode">The registration mode.</param> /// <param name="tag">The tag.</param> /// <exception cref="System.ArgumentNullException">The <paramref name="interfaceType" /> is <c>null</c>.</exception> public ServiceLocatorRegistrationAttribute(Type interfaceType, ServiceLocatorRegistrationMode registrationMode = ServiceLocatorRegistrationMode.SingletonInstantiateWhenRequired, object tag = null) { Argument.IsNotNull("InterfaceType", interfaceType); InterfaceType = interfaceType; RegistrationMode = registrationMode; Tag = tag; RegistrationType = (registrationMode == ServiceLocatorRegistrationMode.Transient) ? RegistrationType.Transient : RegistrationType.Singleton; }
/// <summary> /// Initializes a new instance of the <see cref="ServiceLocatorRegistrationAttribute"/> class. /// </summary> /// <param name="interfaceType">Type of the interface.</param> /// <param name="registrationMode">The registration mode.</param> /// <param name="tag">The tag.</param> /// <exception cref="System.ArgumentNullException">The <paramref name="interfaceType" /> is <c>null</c>.</exception> public ServiceLocatorRegistrationAttribute(Type interfaceType, ServiceLocatorRegistrationMode registrationMode = ServiceLocatorRegistrationMode.SingletonInstantiateWhenRequired, object tag = null) { Argument.IsNotNull("InterfaceType", interfaceType); InterfaceType = interfaceType; RegistrationMode = registrationMode; Tag = tag; RegistrationType = (registrationMode == ServiceLocatorRegistrationMode.Transient) ? RegistrationType.Transient : RegistrationType.Singleton; }