Пример #1
0
        public static INCaptchaBuilder UseEmailCaptcha(this INCaptchaBuilder builder)
        {
            builder.Services.TryAddSingleton <IEmailSender, SmtpEmailSender>();
            builder.Services.AddSingleton <IEmailBodyGenerator, SimpleEmailBodyGenerator>();

            return(builder);
        }
Пример #2
0
        public static INCaptchaBuilder UseEmailCaptcha(this INCaptchaBuilder builder, Action <EmailCaptchaOptions> optionAction)
        {
            builder.Services.Configure(optionAction);

            builder.UseEmailCaptcha();
            return(builder);
        }
Пример #3
0
        public static INCaptchaBuilder UseAliyunSmsCaptcha(this INCaptchaBuilder builder, Action <AliyunSmsOptions> configureOptions)
        {
            builder.Services.AddHttpClient("AliyunSms");
            builder.Services.PostConfigure(configureOptions);
            builder.Services.AddSingleton <AliyunSmsSdk>();
            builder.Services.AddSingleton <ISmsSender, AliyunSmsSender>();

            return(builder);
        }
 public static INCaptchaBuilder UseBasicLetterCaptchaCode(this INCaptchaBuilder builder, string letters = "2346789ABCDEFGHJKLMNPRTUVWXYZ", int codeLength = 4)
 {
     builder.Services.TryAddSingleton <ICaptchaCodeGenerator>(new BasicLetterCodeGenerator(letters, codeLength));
     return(builder);
 }
Пример #5
0
 public static INCaptchaBuilder UseImageCaptcha(this INCaptchaBuilder builder, int width, int height)
 {
     builder.Services.AddSingleton <ICaptchaImageGenerator>(new CaptchaImageGenerator(width, height));
     return(builder);
 }
 public static INCaptchaBuilder UseSession(this INCaptchaBuilder builder)
 {
     builder.Services.TryAddSingleton <ICaptchaCodeStorage, SessionCaptchaCodeStorage>();
     return(builder);
 }