public object Create(ConstructorCandidate candidate, object[] parameters)
        {
            var activator = activators[candidate.Type];

            return(activator.Instantiate(parameters));
        }
 public virtual bool CanConstruct(ConstructorCandidate candidate)
 {
     return(true);
 }
 public bool CanConstruct(ConstructorCandidate candidate)
 {
     return(activators.ContainsKey(candidate.Type));
 }
 public virtual object Create(ConstructorCandidate candidate, object[] parameters)
 {
     return(candidate.Instantiate(parameters));
 }
 public object Create(ConstructorCandidate candidate, object[] parameters)
 {
     var activator = activators[candidate.Type];
     return activator.Instantiate(parameters);
 }
 public bool CanConstruct(ConstructorCandidate candidate)
 {
     return activators.ContainsKey(candidate.Type);
 }
 public virtual object Create(ConstructorCandidate candidate, object[] parameters)
 {
     return candidate.Instantiate(parameters);
 }
 public virtual bool CanConstruct(ConstructorCandidate candidate)
 {
     return true;
 }