在gridview的每一行中显示一个月中的每一天

时间:2012-04-19 05:18:52

标签: asp.net asp.net-mvc

如何在gridview中显示每月的每一天?天数将基于当月,所以我认为它是自动生成的,有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

执行以下sql查询并将其绑定到

后面的代码中的gridview
Declare @Days Table (DateField datetime)

Declare @CurrentDate datetime
Declare @EndDate datetime

Set @CurrentDate = '01-Nov-2007'
Set @EndDate = '30-Nov-2007'

While @CurrentDate <= @EndDate
  Begin
     Insert Into @Days Values(@CurrentDate)
     Set @CurrentDate = DateAdd(d,1,@CurrentDate)
  End 

Select convert(char(2),DateField,103) From @Days

---------如果您需要c#中的解决方案,那么---------

 using System.Linq;
  public IEnumerable<DateTime> DateRange(DateTime fromDate, DateTime toDate)
    {
        return Enumerable.Range(0, toDate.Subtract(fromDate).Days + 1)
                         .Select(d => fromDate.AddDays(d));
    }
        IEnumerable<DateTime> dates;
        dates = DateRange(DateTime.Now, DateTime.Now.AddDays(10));

日期成员将包含给定范围之间的所有日期,您可以将其添加到datatable并将其绑定到Gridview。