什么....如何在调试器中更改DateTime的值?我可以改变它,但离开编辑字段时出错;它无法解析它。
编辑:VS 2008,C#
答案 0 :(得分:44)
如果不看你的内容,我不确定你所指的编辑领域。但是,您可以尝试使用即时窗口,而不是DateTime.Parse
或new DateTime()
。
答案 1 :(得分:32)
您可以在立即窗口中更改日期。
date = new DateTime(2009, 10, 05)
{05/Oct/2009 12:00:00 AM}
Date: {05/Oct/2009 12:00:00 AM}
Day: 5
DayOfWeek: Monday
DayOfYear: 278
Hour: 0
Kind: Unspecified
Millisecond: 0
Minute: 0
Month: 10
Second: 0
Ticks: 633902976000000000
TimeOfDay: {00:00:00}
Year: 2009
答案 2 :(得分:15)
我们可以直接在Watch Window中更改DateTime值。诀窍很简单:我们总是必须使用“new DateTime()”方法,提供适当的参数。
Watch Window不允许您直接键入新值,因此“2010-07-13 9:15”甚至{13/07/2010 09:00:00}之类的内容不起作用。
答案 3 :(得分:9)
您可以在立即窗口,监视窗口或QuickWatch窗口中输入这样的内容,然后评估它们:
myDate = DateTime.Today.AddDays(2)
myDate = new DateTime(2009, 12, 25)
答案 4 :(得分:2)
如果你的意思是在Visual Studio调试器上试试这样:
- 设置断点
- 例如,在QuickWatch中打开DateTime变量(右键单击)
- 在表达式文本框中输入新值,如果变量名称为“dt”,则为示例:
dt = dt.AddDays(3)
- 按enter键继续执行项目
答案 5 :(得分:2)
如果在括号之间定义DateTime,则可以执行此操作。
(new DateTime(2017, 09, 27))
答案 6 :(得分:0)
“dt =”部分并非绝对必要。只需键入“dt.AddDays(3)”或“new DateTime(...)”或DateTime.Parse(“”)等,调试器将尝试将您键入的表达式的任何值结果赋值给变量在观看;它只是因为C#具有赋值表达式(例如y =(x = 1); //设置y = 1),将表达式赋值给变量名称起作用。 :)
答案 7 :(得分:0)
最简单的选项(非通用)=>
例如,在监视窗口内的 Value 输入中
输入DateTime.Now
,然后按Enter
等等! :)