我试图了解我将如何实现这个逻辑

I am trying to understand how i am going to implement this logic

我有这个邮件应用程序,它每天向订阅它的员工发送文章。

这些文章每天手动更新。由于周六和周日没有人手动更新文章,因此员工在接下来的周日和周一应该不会收到文章。我已经成功地实现了这个逻辑。

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 服务,例如这个 here 来确定这一天是否是假期,return 结果返回到您的主要逻辑。

希望对您有所帮助。