Asp.net 向asp:boundfield日期控件添加小时数
我需要修复我继承的一些旧ASP.NET代码(ASP.NET 2.0),它使用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: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)
检查:哦,天哪,这太完美了!非常感谢你!