获取当前值等于'default'的所有属性的属性信息

时间:2014-09-23 11:13:50

标签: c# reflection types expression equality

因此,我需要检索当前具有与其各自类型的默认值匹配的值的实例的所有属性。

的内容
GetType().GetProperties().Where(x => 
    x.GetValue(this).Equals(default(x.PropertyType)));

这显然不起作用,因为此时似乎无法解决'x'。我该怎么办?

1 个答案:

答案 0 :(得分:0)

问题略有不同。您无法将Type的运行时实例传递给默认值。您的问题可以简化为:

var type = typeof (string);
var defaultValue = default(type); // doesn't work

这不起作用。相反,您希望在运行时获取默认值,该值已由this question回答。