我想在幾天之間創建報告,並選擇每天生成報告。當我將時間間隔設置爲24:00:00.000時,會顯示以下錯誤: 日曆System.Globalization.GregorianCalendar中不支持該字符串表示的DateTime。日期時間1天長度
23:59:59導致我的報告延誤。
什麼是1天日期時間格式的legth?
這裏是我在MSSQL服務器
PROCEDURE [dbo].[Procedure1]
@Start datetime,
@Finish datetime,
@TimeRange time
AS
BEGIN
SET NOCOUNT ON;
declare @TimeRanges as TABLE (SessionStart datetime, SessionEnd datetime);
with TimeRanges as (
select @Start as StartTime, @Start + @TimeRange as EndTime
union all
select StartTime + @TimeRange, EndTime + @TimeRange
from TimeRanges
where EndTime < @Finish)
select StartTime, EndTime, Count(Test.ScenarioID) as TotalPeaks
from TimeRanges as TR left outer join
dbo.Test as Test on TR.StartTime <= Test.SessionStartTime and Test.SessionCloseTime < TR.EndTime
group by TR.StartTime, TR.EndTime
END
程序,並調用這個過程是在這裏
private DataSet GetStoredProcedure1(DateTime StartTime, DateTime FinishTime, DateTime TimeRange)
{
DataSet ds = new DataSet();
SqlCommand cmd = new SqlCommand("Procedure1", connection);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("@Start", SqlDbType.DateTime).Value = StartTime;
cmd.Parameters.AddWithValue("@Finish", SqlDbType.DateTime).Value = FinishTime;
cmd.Parameters.AddWithValue("@TimeRange", SqlDbType.DateTime).Value = TimeRange;
SqlDataAdapter da = new SqlDataAdapter();
da.SelectCommand = cmd;
da.Fill(ds);
return ds;
}
當我給時間範圍00:05:00.00 5分鐘,01:00:00.000的1小時我的代碼沒有任何問題,但是當我想每天的報告24:00:00.00不工作。我該如何解決這個問題?
哪種語言?請提供一些代碼讓我們更容易。 – WozzeC
我正在C#.NET上工作 – cihata87
datetime的長度基本上是DateTimeValue.AddDays(1)。如果你提供了一些代碼,我可以告訴你在哪裏放置它。 – WozzeC