C# 如何创建今天23:00的日期时间

C# 如何创建今天23:00的日期时间,c#,C#,我想要一个DateTime变量,它是今天(一天中的任何给定时间)23:00 必须有一个更干净的方法来做到这一点,因为这让我想起了太多好的ol'ASP.Classic var startDate = DateTime.Parse(DateTime.Now.ToShortDateString() + " 23:00:00"); 有人吗?干净的方法是: var eleven = DateTime.Today.AddHours(23); DateTime myTime = DateTime.Now.

我想要一个DateTime变量,它是今天(一天中的任何给定时间)23:00

必须有一个更干净的方法来做到这一点,因为这让我想起了太多好的ol'ASP.Classic

var startDate = DateTime.Parse(DateTime.Now.ToShortDateString() + " 23:00:00");
有人吗?

干净的方法是:

var eleven = DateTime.Today.AddHours(23);
DateTime myTime = DateTime.Now.Date.AddHours(23); 
另一种方式是:

DateTime myTime = DateTime.Now.Date + new TimeSpan("23","0","0");

DateTime.Today.AddHours(23)
@ck可能是因为阅读问题和点击“发布你的答案”之间需要一段时间。Google Wave不会有这个问题;)最糟糕的是,当一个与你的答案相隔几分钟后发布的相同答案被接受为问题的答案时,这是怎么回事?通常情况下,如果有人在我阅读问题或撰写答案时发布了答案,StackOverflow会弹出一条消息。不幸的是,当使用多个窗口/选项卡时,这似乎不起作用。这就是为什么我发布了相同的答案(ish):(@Ian:无法计算发生在我身上的次数。(或者更好的是,有人在几分钟后发布了与你相同的答案-他们阅读了你的答案-然后再添加一句话,使其成为“更好”的答案。)a好的,TimeSpan的参数是整数,因此“”是错误的,但不确定+1只是为了抵消-1,因为这是一个完全合法的答案,除了
TimeSpan
构造函数中的多余引号(
DateTime.Now.Date
将返回与
DateTime.Today
相同的结果,该答案获得了17票)。DateTime.Today.AddHours(23)更漂亮。:)
DateTime myTime = DateTime.Now.Date.AddHours(23); 
DateTime myTime = DateTime.Now.Date + new TimeSpan("23","0","0");