我有以下代码:
using System;
namespace ConsoleApplication1
{
class Program
{
static void Main()
{
var foo = new Foo
{
TheDate = DateTime.Now
};
Console.Read();
}
}
class Foo
{
public DateTime? TheDate { get; set; }
}
}
我在第Console.Read();
行设置断点并使用Visual Studio 2015中的立即窗口,我观察foo.TheDate
的值:
现在我使用立即窗口设置foo.TheDate
的值为1990年圣诞节(任何日期都足够了,只需使用一个易于记忆的例子):
我看到值回显给我,所以一切看起来都很好。但是,当我现在观察该值时,返回的日期完全不同:
这里发生了什么?
修改
除此之外,如果您使用常规DateTime(不可为空),并尝试使用相同的示例代码,则在尝试使用foo.TheDate = new DateTime(2012, 12, 25)
进行分配时,立即窗口会出现System.Reflection.TargetParameterCountException
和消息"参数计数不匹配"。