示例#1
0
 public static bool CanInstantiate(this IInstantiator instantiator, Type concreteType)
 {
     return(instantiator.CanInstantiate(new InjectionContext
     {
         Container = instantiator.Container,
         DeclaringType = concreteType,
     }));
 }
示例#2
0
 public object Get(InjectionContext context)
 {
     if (resolver.CanResolve(context))
     {
         return(resolver.Resolve(context));
     }
     else if (parent != null && parent.Resolver.CanResolve(context))
     {
         return(parent.Resolver.Resolve(context));
     }
     else if (instantiator.CanInstantiate(context))
     {
         return(instantiator.Instantiate(context));
     }
     else if (parent != null && parent.Instantiator.CanInstantiate(context))
     {
         return(parent.Instantiator.Instantiate(context));
     }
     else
     {
         return(null);
     }
 }
示例#3
0
 public static bool CanInstantiate <TConcrete>(this IInstantiator instantiator)
 {
     return(instantiator.CanInstantiate(typeof(TConcrete)));
 }