コード例 #1
0
 /// <summary>
 ///  Adds the instane of registered type that will be used when resolving.
 /// </summary>
 /// <param name="resolvableItemRegistrationBase">The resolvable item registration base.</param>
 /// <param name="instance">The instance factory.</param>
 /// <returns></returns>
 public static ConcreteItemRegistrationBase As <TConcreteType>(
     this ConcreteItemRegistrationBase resolvableItemRegistrationBase,
     TConcreteType instance)
 {
     resolvableItemRegistrationBase.OwnFactory = ctx => instance;
     return(resolvableItemRegistrationBase);
 }
コード例 #2
0
 /// <summary>
 /// Adds function that creates instances of registered type.
 /// </summary>
 /// <param name="resolvableItemRegistrationBase">The resolvable item base.</param>
 /// <param name="instanceFactory">The instance factory.</param>
 /// <returns>Type registration base.</returns>
 public static ConcreteItemRegistrationBase As <TConcreteType>(
     this ConcreteItemRegistrationBase resolvableItemRegistrationBase,
     Func <ActivationContext, TConcreteType> instanceFactory)
 {
     resolvableItemRegistrationBase.OwnFactory = instanceFactory != null
                                                     ? context => instanceFactory(context)
                                                     : (Func <ActivationContext, object>)null;
     return(resolvableItemRegistrationBase);
 }