/// <summary> /// 构造一个 <see cref="DrawingExtensionBuilder"/>。 /// </summary> /// <exception cref="ArgumentNullException"> /// <paramref name="parentBuilder"/> 为空。 /// </exception> /// <param name="parentBuilder">给定的父级 <see cref="IExtensionBuilder"/>。</param> public DrawingExtensionBuilder(IExtensionBuilder parentBuilder) : base(parentBuilder) { // Drawers ServiceCharacteristics.AddSingleton <ISavingDrawer>(); ServiceCharacteristics.AddSingleton <IScalingDrawer>(); ServiceCharacteristics.AddSingleton <IWatermarkDrawer>(); // Verification ServiceCharacteristics.AddScope <ICaptchaGenerator>(); }
/// <summary> /// 构造一个 <see cref="DataExtensionBuilder"/>。 /// </summary> /// <exception cref="ArgumentNullException"> /// <paramref name="parentBuilder"/> 为空。 /// </exception> /// <param name="parentBuilder">给定的父级 <see cref="IExtensionBuilder"/>。</param> public DataExtensionBuilder(IExtensionBuilder parentBuilder) : base(parentBuilder) { ServiceCharacteristics.AddSingleton <IIdGeneratorFactory>(); ServiceCharacteristics.AddSingleton <IAuditingManager>(); // Accessing ServiceCharacteristics.AddScope <IAccessorManager>(); ServiceCharacteristics.AddScope <IAccessorMigrator>(); ServiceCharacteristics.AddScope <IAccessorResolver>(); ServiceCharacteristics.AddScope <IAccessorSeeder>(addImplementationType: true); ServiceCharacteristics.AddScope <IAccessorInitializer>(); // Sharding ServiceCharacteristics.AddSingleton <IShardingManager>(); // Storing ServiceCharacteristics.AddScope(typeof(IStore <>)); // ValueConversion ServiceCharacteristics.AddSingleton <IEncryptionConverterFactory>(); }