public void ActivateStandardTypeParameters() { var activator = new DynamicActivator(typeof(ActivationClass), typeof(int), typeof(int), typeof(string)); var instance = activator.Activate(1, 2, "Hello World") as ActivationClass; Assert.NotNull(instance); Assert.Equal(1, instance.Constructor); }
public void ActivateParameterLess() { var activator = new DynamicActivator(typeof(ActivationClass)); var instance = activator.Activate() as ActivationClass; Assert.NotNull(instance); Assert.Equal(0, instance.Constructor); }
public IGraphTraveller GetInstance(IVisitArgsFactory factory) { if (_isConstructing) { throw new InvalidOperationException("The type is still being constructed"); } return((IGraphTraveller)_activator.Activate(factory)); }
public TInstance GetInstance() { var conParams = _conParamFactories .Select(f => f.GetInstance()) .ToArray(); var instance = (TInstance)_activator.Activate(conParams); if (_propertySetter != null) { var propParams = _propParamFactories .Select(f => f.GetInstance()) .ToArray(); _propertySetter.Invoke(instance, propParams); } return(instance); }