オブジェクトのすべての DateTime プロパティをデフォルトの日付に設定したいと考えています。ただし、リフレクションを使用して値を設定しようとすると、「オブジェクトがターゲット タイプと一致しません」という例外が発生します。
private void SetDefaultValues()
{
DateTime dt = DateTime.Parse("1/1/2000", new CultureInfo("en-US", true));
foreach (PropertyInfo p in this.GetType().GetProperties())
{
if (p.PropertyType.FullName == "System.DateTime")
{
p.SetValue(dt, typeof(DateTime), null);
}
}
}
私は根本的に間違ったことをしている/考えていますか?