/// <summary> /// Initializes a new instance of <see cref="XmlDeserializationProxy{TTarget}"/>, /// specifying a default type. If <paramref name="defaultType"/> is null, and if no /// type is provided via the <see cref="TypeAssemblyQualifiedName"/> property after /// this instance of <see cref="XmlDeserializationProxy{TTarget}"/> has been create, /// then subsequent calls to the <see cref="CreateInstance()"/> or /// <see cref="CreateInstance(IResolver)"/> /// methods will fail. /// </summary> /// <param name="defaultType"> /// The type of object to create if <see cref="TypeAssemblyQualifiedName"/> is not specified. /// </param> /// <remarks> /// If the inheritor of <see cref="XmlDeserializationProxy{TTarget}"/> can supply a /// default type, its default constructor should invoke this constructor, supplying /// the default type. /// <code> /// <![CDATA[ /// public class FooProxy : XmlDeserializationProxy<IFoo> /// { /// public FooProxy() /// : base(typeof(Foo)) /// { /// } /// } /// ]]> /// </code> /// </remarks> public XmlDeserializationProxy(Type defaultType) { _engine = new XmlDeserializationProxyEngine <TTarget>(this, defaultType, null); }
public ConstructorComparer(XmlDeserializationProxyEngine <TTarget> engine, IResolver resolver) { _engine = engine; _resolver = resolver; }