我在 MVC 中有两个日期"开始日期"和"结束日期"asp.net 我想运行从"开始日期"到"结束日期"的循环



我想使用两个日期在 MVC 中运行循环 Asp.net 并希望从这两个日期之间存在的数据库中获取所有数据,请帮助我。

如果您需要通过 Razor 进行制作,那么您可以使用以下代码:

@for (DateTime item = model.BeginDate; item <= model.EndDate; item = item.AddDays(1))
{
    <div>Date is @item</div>
}

但是,如果您需要从数据库获取数据,最好将其包含在使用 BETWEEN 关键字获取此数据的 SQL 查询中。下面是一个示例:

SELECT * FROM SomeSource WHERE DateColumn BETWEEN @BeginDate AND @endDate

UPDATE1我以前没有使用过 nHibernate,但似乎在 SO 上有一个关于它的答案 - 使用 nHibernate 查询今天的日期在发布日期和到期日期之间

基本上你可以写这样的代码:

DateTime beginDate, endDate;
// init datetime values
return _session.CreateCriteria<Message>()
           .Add(
                  Restrictions.Le("BeginDate", beginDate) 
                  & Restrictions.Ge("EndDate", endDate))
           .List<SomeResultType>();