Asp.net 我想在gridview中表示工作日

Asp.net 我想在gridview中表示工作日,asp.net,datetime,gridview,weekday,Asp.net,Datetime,Gridview,Weekday,现在我想在网格中这样表示这个结果 因此,基本上,您实际的问题是如何更改日期时间的周天数值,使其与一周中指定的第一天保持距离 然后您可以使用此方法: SELECT * FROM Table1 WHERE id1=212 AND date BETWEEN '20.08.2012' AND '24.08.2012' ORDER BY date 例如,假设用户输入了today以指定星期二是一周的开始: public static int Weekday(DateTime dt, DayOfWe

现在我想在网格中这样表示这个结果


因此,基本上,您实际的问题是如何更改
日期时间的
周天数
值,使其与一周中指定的第一天保持距离

然后您可以使用此方法:

SELECT  *  FROM Table1
WHERE  id1=212 AND date BETWEEN '20.08.2012' AND  '24.08.2012'
ORDER BY date
例如,假设用户输入了today以指定
星期二
是一周的开始:

public static int Weekday(DateTime dt, DayOfWeek startOfWeek)
{
    return (dt.DayOfWeek - startOfWeek + 7) % 7;
}
演示:


如果这是真的,您只需在
GridView
RowDataBound
中使用此方法,即可根据
tbFirstDate
中的指定日期和GridView行的
DataItem
中的
date
值手动设置
模板字段中标签的文本。使用
GridViewRow.FindControl(“LabelID”)
获取标签的引用。

你能说明一下你的网格应该是什么样子吗?所以基本上你真正的问题是如何将
DateTime的
DayOfWeek
值更改指定的天数吗?@AmiramKorach我添加了一张我的网格图片,也许现在更清楚了,还是不清楚。这只是一个SQL问题吗?您知道如何分组吗?“定义哪一天是星期一”实际上是什么意思?用户是否可以选择星期五而不是星期一来定义给定日期的偏移量?什么是值,它是一个字符串、字符、数字还是需要分组的日期,还是仅仅是一个指标?@TimSchmelter文本框的设计目的是只接收星期一的值,主要问题是如何使用星期一偏移量Schemelter计算每一个日期的星期几我添加了一张网格的图片,也许现在更清楚了
public static int Weekday(DateTime dt, DayOfWeek startOfWeek)
{
    return (dt.DayOfWeek - startOfWeek + 7) % 7;
}
DateTime value = new DateTime(2012, 8, 20);
DayOfWeek weekday = (DayOfWeek)Weekday(value, DateTime.Now.DayOfWeek);
Console.Write("normally:{0} changed to:{1}", value.DayOfWeek, weekday);