Asp.net 向asp:boundfield日期控件添加小时数

Asp.net 向asp:boundfield日期控件添加小时数,asp.net,Asp.net,我需要修复我继承的一些旧ASP.NET代码(ASP.NET 2.0),它使用将日期时间绑定到字段,如下所示 <asp:BoundField DataField="Date" DataFormatString="{0:T}" HeaderText="Time" HtmlEncode="False" SortExpression="Date" /> 问题是我需要在日期输出中添加小时,因为它存储在UTC中 它从一个非常不稳定的-我在这里加上,我不太懂SQL,我对这些控件的了解

我需要修复我继承的一些旧ASP.NET代码(ASP.NET 2.0),它使用
日期时间
绑定到字段,如下所示

<asp:BoundField DataField="Date" 
 DataFormatString="{0:T}" HeaderText="Time" HtmlEncode="False"
 SortExpression="Date" 
/>

问题是我需要在日期输出中添加小时,因为它存储在UTC中

它从一个非常不稳定的
-我在这里加上,我不太懂SQL,我对这些控件的了解更少

<asp:SqlDataSource ID="storeSessions" runat="server" ConnectionString="<%$ ConnectionStrings:MSSQL %>"
        ProviderName="<%$ ConnectionStrings:MSSQL.ProviderName %>" SelectCommand="SELECT Employees.FirstName, Employees.LastName, Logins.Date, Locations.Name AS Site FROM Logins INNER JOIN Employees ON Logins.Employee = Employees.Id INNER JOIN Locations ON Logins.Location = Locations.Id WHERE (Logins.Date BETWEEN @Date AND @Date + ' 23:59:59:997') AND (Logins.Location = @Site)">
        <SelectParameters>
            <asp:ControlParameter ControlID="insertBirthdayPicker" Name="Date" PropertyName="SelectedDate" DefaultValue="8/1/2006" />
            <asp:SessionParameter DefaultValue="0" Name="Site" SessionField="Site" />
        </SelectParameters>
    </asp:SqlDataSource>


有没有办法添加小时数?

您可以按如下方式更改sql查询:

    SELECT Employees.FirstName, 
           Employees.LastName, 
           DATEADD(hour, -6, Logins.Date) as Date, --here you add (-6) to your datetime
           Locations.Name AS Site 
      FROM Logins 
INNER JOIN Employees 
        ON Logins.Employee = Employees.Id 
INNER JOIN Locations 
        ON Logins.Location = Locations.Id 
     WHERE (Logins.Date BETWEEN @Date AND @Date + ' 23:59:59:997') 
       AND (Logins.Location = @Site)

检查:哦,天哪,这太完美了!非常感谢你!