我的日期时间有问题。在我的sql数据中,我有1-24h的时间数据,但是在C#datetime中我只能建模从0h到23h的值。如何将其转换为1-24h?
提前致谢!
我怎么能表达你的理解,我的英语不够好。好难过。 我有这样的数据
1/1/2010 1:00 20mm
1/1/2010 2:00 30mm
1/1/2010 3:00 50mm
....
1/1/2010 23:00 10mm
1/1/2010 24:00 5mm
2/1/2010 1:00 30mm
2/1/2010 2:00 8mm
如你所见,没有0:00,他们写的是凌晨0点24:00。
答案 0 :(得分:1)
试试吧。
Datetime.Now.AddHours(-12)
它可能对你有帮助。
答案 1 :(得分:0)
0-23h有效,因为0:00是午夜,23:59:59是一秒到明天。我不确定你是如何在SQL中获得1-24的,说实话,我总是看到SQL Server中存储的数据为00-23。
如果您正在寻找格式化要显示的数据,请查看以下链接; http://msdn.microsoft.com/en-gb/library/8kb3ddd4.aspx
答案 2 :(得分:0)
答案 3 :(得分:0)
您可以编写一个为您执行字符串格式化的扩展方法。
string str = System.DateTime.Now.ToMySQLstring();
这是扩展方法:
namespace System
{
public static class TimeSpanExtensions
{
public static string ToMySQLstring(this DateTime dt)
{
int hour = dt.Hour + 1;
int min = dt.Minute;
int sec = dt.Second;
int msec = dt.Millisecond;
int day = dt.Day;
int month = dt.Month;
int year = dt.Year;
//2009-05-01T14:18:12.430
return String.Format("{0}-{1:00}-{2:00}T{3:00}:{4:00}:{5:00}.{6:000}", year, month, day, hour, min, sec, msec);
}
} // End Class
} // End Namespace