public DiRootBinding(Type abstractType) { this.abstractType = abstractType; items = new List <DiRootBindingItem>(); if (!abstractType.IsAbstract) { if (!DiConstructorBinding.TryCreate(abstractType, out concreteTypeBinding)) { concreteTypeBinding = null; } } }
public static bool TryCreate(Type type, out DiConstructorBinding binding) { ConstructorInfo constructor; string errorMessage; if (!TryGetSingleUsableConstructor(type, out constructor, out errorMessage)) { binding = null; return(false); } binding = new DiConstructorBinding(constructor); return(true); }