2

我有一个日期时间跨度,但当前用户可以输入12:00:00:00,我收到此错误:

SqlDbType.Time 溢出。值“12:00:00:00”超出范围。必须介于 00:00:00.0000000 和 23:59:59.9999999 之间。

所以为了阻止他们这样做,我认为如果我在第三个冒号之后删除所有字符会更容易。我该怎么做呢?

4

3 回答 3

3

12:00:00.00不想12.00:00:00

注意你的句号。

尝试

        string badtimes = "12:00:00:00";
        string goodtimes = badtimes.Substring(0, badtimes.LastIndexOf(":")); // 12:00:00

还要检查SqlDbType.Time 和 TimeSpan 不兼容

于 2012-10-11T08:11:01.123 回答
1

字符串中的点未正确放置: 12.00:00:00必须是12:00:00.00

于 2012-10-11T08:13:38.380 回答
0

你可以试试这个

String time = "12:00:00:00";
        string[] parts = time.Split(new char [] {':'}, StringSplitOptions.RemoveEmptyEntries);
        string correctFormating = String.Format("{0}:{1}:{2}.{3}",parts);
于 2012-10-11T08:21:26.630 回答