繁体   English   中英

如何将列表限制在设定的时间段内?

[英]How to restrict tolist to a set period of time?

我正在使用以下linq来获取要发送的电子邮件。 我想做的就是说,在预约的30分钟前向客户发送电子邮件。 我的问题是使用开始日期和结束日期字段,我将如何调整以下查询以实现此目的。

/// <summary>
/// Gets the allnotes by appointment.
/// </summary>
/// <param name="id">The identifier.</param>
/// <returns></returns>
 public List<tblapertureNetAppointment> getAppointmentsForEmailProccessed()
    {
        try
        {
            var _appointment = apertureNetEntities.tblapertureNetAppointments.Where(f => f.isDeleted == false && f.isProccessed==false ).ToList();
            return _appointment.AsQueryable().ToList();
        }
    catch (Exception ex)

        {
            string inner = string.Empty;
            if (ex.InnerException != null)
            {
                inner = ex.InnerException.ToString();
            }
            logger.Error("Error in IQueryable function getAppointmentsForEmail " + ex.ToString() + " " + inner);
            return null;
        }
 }

假设所讨论的实体具有一个名为startTimeDateTime属性,该属性保存约会日期。

public DateTime startTime { get; set;}

您需要根据约会的开始日期和时间过滤列表。

return _appointment
           .Where(appointment => 
                     (appointment.startTime < Date.Now) &&
                     (appointment.startTime.Date == DateTime.Today) &&
                     (Date.Now - appointment.startTime).TotalMinutes < 30)
           .ToList();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM