예제 #1
0
        internal void SendEmail(EmailType business, IEmailBodyMaker emailBodyMaker)
        {
            IEmailStrategy strategy = null;

            switch (business)
            {
            case EmailType.Business:
                strategy = new EmailBusinessNotificationStrategy(emailBodyMaker);
                break;

            case EmailType.Exception:
                strategy = new EmailExceptionNotificationStrategy(emailBodyMaker);
                break;

            default:
                break;
            }

            //Read below values from Configuration.
            strategy.From = "from";
            strategy.To   = "to";
            strategy.Smtp = "smtp";
            strategy.CreateEmailBody();

            EmailProcessor.SendEmail(strategy);
        }
예제 #2
0
        // *******************************************************************
        // Constructors.
        // *******************************************************************

        #region Constructors

        /// <summary>
        /// This constructor creates a new instance of the <see cref="EmailService"/>
        /// class.
        /// </summary>
        /// <param name="emailStrategy">A reference to an email strategy.</param>
        public EmailService(
            IEmailStrategy emailStrategy
            )
        {
            // Validate the parameters before attempting to use them.
            Guard.Instance().ThrowIfNull(emailStrategy, nameof(emailStrategy));

            // Save the reference.
            EmailStrategy = emailStrategy;
        }
예제 #3
0
 static Emails()
 {
     _iemailstrategy          = BSEmail.Instance;
     _iemailstrategy.Host     = BSConfig.EmailConfig.Host;
     _iemailstrategy.Port     = BSConfig.EmailConfig.Port;
     _iemailstrategy.UserName = BSConfig.EmailConfig.UserName;
     _iemailstrategy.Password = BSConfig.EmailConfig.Password;
     _iemailstrategy.From     = BSConfig.EmailConfig.From;
     _iemailstrategy.FromName = BSConfig.EmailConfig.FromName;
 }
예제 #4
0
        private static MallConfigInfo _mallconfiginfo   = null; //商城配置信息

        /// <summary>
        /// 静态构造函数
        /// </summary>
        static Emails()
        {
            _iemailstrategy          = BMAEmail.Instance;
            _emailconfiginfo         = BMAConfig.EmailConfig;
            _mallconfiginfo          = BMAConfig.MallConfig;
            _iemailstrategy.Host     = _emailconfiginfo.Host;
            _iemailstrategy.Port     = _emailconfiginfo.Port;
            _iemailstrategy.UserName = _emailconfiginfo.UserName;
            _iemailstrategy.Password = _emailconfiginfo.Password;
            _iemailstrategy.From     = _emailconfiginfo.From;
            _iemailstrategy.FromName = _emailconfiginfo.FromName;
        }
예제 #5
0
파일: Emails.cs 프로젝트: qq550723504/zone
        private static MallConfigInfo _mallconfiginfo = null;//商城配置信息

        /// <summary>
        /// 静态构造函数
        /// </summary>
        static Emails()
        {
            _iemailstrategy = BMAEmail.Instance;
            _emailconfiginfo = BMAConfig.EmailConfig;
            _mallconfiginfo = BMAConfig.MallConfig;
            _iemailstrategy.Host = _emailconfiginfo.Host;
            _iemailstrategy.Port = _emailconfiginfo.Port;
            _iemailstrategy.UserName = _emailconfiginfo.UserName;
            _iemailstrategy.Password = _emailconfiginfo.Password;
            _iemailstrategy.From = _emailconfiginfo.From;
            _iemailstrategy.FromName = _emailconfiginfo.FromName;
        }
예제 #6
0
파일: Emails.cs 프로젝트: nuet/OWZXAPP
        private static ShopConfigInfo _shopconfiginfo   = null; //商城配置信息

        /// <summary>
        /// 静态构造函数
        /// </summary>
        static Emails()
        {
            _iemailstrategy          = BSPEmail.Instance;
            _emailconfiginfo         = BSPConfig.EmailConfig;
            _shopconfiginfo          = BSPConfig.ShopConfig;
            _iemailstrategy.Host     = _emailconfiginfo.Host;
            _iemailstrategy.Port     = _emailconfiginfo.Port;
            _iemailstrategy.UserName = _emailconfiginfo.UserName;
            _iemailstrategy.Password = _emailconfiginfo.Password;
            _iemailstrategy.From     = _emailconfiginfo.From;
            _iemailstrategy.FromName = _emailconfiginfo.FromName;
        }
예제 #7
0
        private static ShopConfigInfo _shopconfiginfo = null; //商城配置信息

        #endregion Fields

        #region Constructors

        /// <summary>
        /// 静态构造函数
        /// </summary>
        static Emails()
        {
            _iemailstrategy = BSPEmail.Instance;
            _emailconfiginfo = BSPConfig.EmailConfig;
            _shopconfiginfo = BSPConfig.ShopConfig;
            _iemailstrategy.Host = _emailconfiginfo.Host;
            _iemailstrategy.Port = _emailconfiginfo.Port;
            _iemailstrategy.UserName = _emailconfiginfo.UserName;
            _iemailstrategy.Password = _emailconfiginfo.Password;
            _iemailstrategy.From = _emailconfiginfo.From;
            _iemailstrategy.FromName = _emailconfiginfo.FromName;
        }
예제 #8
0
        private static IEmailStrategy _iemailstrategy = null;//邮件策略

        static BSPEmail()
        {
            try
            {
                string[] fileNameList = Directory.GetFiles(System.Web.HttpRuntime.BinDirectory, "BrnShop.EmailStrategy.*.dll", SearchOption.TopDirectoryOnly);
                _iemailstrategy = (IEmailStrategy)Activator.CreateInstance(Type.GetType(string.Format("BrnShop.EmailStrategy.{0}.EmailStrategy, BrnShop.EmailStrategy.{0}", fileNameList[0].Substring(fileNameList[0].IndexOf("EmailStrategy.") + 14).Replace(".dll", "")),
                                                                                        false,
                                                                                        true));
            }
            catch
            {
                throw new BSPException("创建'邮件策略对象'失败,可能存在的原因:未将'邮件策略程序集'添加到bin目录中;'邮件策略程序集'文件名不符合'BrnShop.EmailStrategy.{策略名称}.dll'格式");
            }
        }
예제 #9
0
 /// <summary>
 /// 加载邮件策略
 /// </summary>
 private static void Load()
 {
     try
     {
         string[] fileNameList = Directory.GetFiles(System.Web.HttpRuntime.BinDirectory, "BonSite.EmailStrategy.*.dll", SearchOption.TopDirectoryOnly);
         _emailstrategy = (IEmailStrategy)Activator.CreateInstance(Type.GetType(string.Format("BonSite.EmailStrategy.{0}.EmailStrategy, BonSite.EmailStrategy.{0}", fileNameList[0].Substring(fileNameList[0].IndexOf("EmailStrategy.") + 14).Replace(".dll", "")),
                                                                                false,
                                                                                true));
     }
     catch
     {
         throw new BSException("创建\"邮件策略对象\"失败,可能存在的原因:未将\"邮件策略程序集\"添加到bin目录中;将多个\"邮件策略程序集\"添加到bin目录中;\"邮件策略程序集\"文件名不符合\"BrnShop.EmailStrategy.{策略名称}.dll\"格式");
     }
 }
예제 #10
0
        private static IEmailStrategy _iemailstrategy = null; //邮件策略

        #endregion Fields

        #region Constructors

        static BSPEmail()
        {
            try
            {
                string[] fileNameList = Directory.GetFiles(System.Web.HttpRuntime.BinDirectory, "BrnShop.EmailStrategy.*.dll", SearchOption.TopDirectoryOnly);
                _iemailstrategy = (IEmailStrategy)Activator.CreateInstance(Type.GetType(string.Format("BrnShop.EmailStrategy.{0}.EmailStrategy, BrnShop.EmailStrategy.{0}", fileNameList[0].Substring(fileNameList[0].IndexOf("EmailStrategy.") + 14).Replace(".dll", "")),
                                                                                       false,
                                                                                       true));
            }
            catch
            {
                throw new BSPException("创建'邮件策略对象'失败,可能存在的原因:未将'邮件策略程序集'添加到bin目录中;'邮件策略程序集'文件名不符合'BrnShop.EmailStrategy.{策略名称}.dll'格式");
            }
        }
예제 #11
0
        private static IEmailStrategy _iemailstrategy = null;//邮件策略

        static HaEmail()
        {
            //try
            //{
            //    string[] fileNameList = Directory.GetFiles(System.Web.HttpRuntime.BinDirectory, "Halfox.EmailStrategy.*.dll", SearchOption.TopDirectoryOnly);
            //    _iemailstrategy = (IEmailStrategy)Activator.CreateInstance(Type.GetType(string.Format("Halfox.EmailStrategy.{0}.EmailStrategy, Halfox.EmailStrategy.{0}", fileNameList[0].Substring(fileNameList[0].IndexOf("EmailStrategy.") + 14).Replace(".dll", "")),
            //                                                                           false,
            //                                                                           true));
            //}
            //catch
            //{
            //    throw new HaException("创建'邮件策略对象'失败,可能存在的原因:未将'邮件策略程序集'添加到bin目录中;'邮件策略程序集'文件名不符合'Halfox.EmailStrategy.{策略名称}.dll'格式");
            //}
            _iemailstrategy = new EmailStrategy();
        }
예제 #12
0
 public static void SendEmail(IEmailStrategy strategy)
 {
     Console.WriteLine(strategy.EmailBody);
     Console.ForegroundColor = ConsoleColor.White;
 }