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); }
// ******************************************************************* // 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; }
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; }
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; }
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; }
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; }
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; }
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'格式"); } }
/// <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\"格式"); } }
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'格式"); } }
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(); }
public static void SendEmail(IEmailStrategy strategy) { Console.WriteLine(strategy.EmailBody); Console.ForegroundColor = ConsoleColor.White; }