C# 我试图理解我将如何实现这个逻辑
我有一个mailer应用程序,它每天向订阅它的员工发送文章 这些文章每天手动更新。由于没有人在周六和周日手动更新文章,员工不应该在接下来的周日和周一收到文章。我成功地实现了这一逻辑C# 我试图理解我将如何实现这个逻辑,c#,asp.net,database,mailer,C#,Asp.net,Database,Mailer,我有一个mailer应用程序,它每天向订阅它的员工发送文章 这些文章每天手动更新。由于没有人在周六和周日手动更新文章,员工不应该在接下来的周日和周一收到文章。我成功地实现了这一逻辑 DataSet newsData = this._biData.GetAutomailListNotes(user.UserId, categories, newsEmailSentDateTime); DayOfWeek dayOfTheWeek = this._configurationOverrid
DataSet newsData = this._biData.GetAutomailListNotes(user.UserId,
categories, newsEmailSentDateTime);
DayOfWeek dayOfTheWeek = this._configurationOverrides?.DayOfTheWeekOverride ??
DateTime.Today.DayOfWeek;
// if user has an article to be sent. Morning Markets are not sent on Sunday nor Monday
if (newsData.Tables[0].Rows.Count > 0 ||
(isMorningMarketsUser && dayOfTheWeek != DayOfWeek.Sunday &&
dayOfTheWeek != DayOfWeek.Monday))
现在,我的客户希望我实现一个逻辑,也包括假期
在数据库中,我们有一个“Createdate”列。它存储创建文章的日期和时间。我想实现一个逻辑,即如果文章是在用户今天收到邮件后创建的,那么明天再次发送邮件以及新文章,否则不要发送它。用户可以订阅多篇文章。我甚至不确定这是否是一个好的策略。如有任何建议,将不胜感激
我个人认为,您需要将代码与其他逻辑分离开来,以识别假日。
为此创建一个函数,使用免费的在线api服务(比如这一个)来确定这一天是否是假日,并将结果返回到主逻辑 希望有帮助