我通过在当前日期添加一天来创建DateTime(如下所示).我需要设置的具体时间如下所示.下面这段代码很有用,直到我到月底我要添加一天.
你可以帮我改变我的代码,以便它在当天工作日结束时工作,并且我试图添加一天,以便它切换到12月1日而不是11月31日(例如)并抛出错误.
var ldUserEndTime = new DateTime(dateNow.Year, dateNow.Month, dateNow.Day + 1, 00, 45, 00);
Run Code Online (Sandbox Code Playgroud)
Son*_*nül 13
您只需要使用使用属性的DateTime.AddDays方法来获取它的午夜并添加分钟.Date45
var ldUserEndTime = dateNow.AddDays(1).Date.AddMinutes(45);
Run Code Online (Sandbox Code Playgroud)
由于11月没有第31天,这个构造函数抛出异常.
从DateTime(Int32,?Int32,?Int32,?Int32,?Int32,?Int32)页面上的例外部分;
ArgumentOutOfRangeException - day小于1 或大于月中的天数
也许某种混合方法最适合您,这样您就可以获得时间组件并在月末没有麻烦的情况下添加日期:
var ldUserEndTime = new DateTime(dateNow.Year, dateNow.Month, dateNow.Day, 00, 45, 00).AddDays(1);
Run Code Online (Sandbox Code Playgroud)
该AddDays方法将自动考虑月份翻转,所以如果今天是月末(嘿,它是!),那么你会得到2015-12-01 12:45:00.
var ldUserEndTime = DateTime.Today + new TimeSpan(1, 0, 45, 0);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1013 次 |
| 最近记录: |