【发布时间】:2017-05-24 10:36:46
【问题描述】:
我有一个包含字符串的对象和包含字符串的其他对象,我需要做的是确保该对象和任何子对象都有一个空字符串而不是空值,到目前为止这工作正常:
foreach (PropertyInfo prop in contact.GetType().GetProperties())
{
if(prop.GetValue(contact, null) == null)
{
prop.SetValue(contact, string.empty);
}
}
问题是这只适用于对象字符串而不是子对象字符串。如果发现是null,有没有办法也循环所有子对象并将它们的字符串设置为string.Empty?
以下是“联系人”对象的示例:
new contact
{
a = "",
b = "",
c = ""
new contact_sub1
{
1 = "",
2 = "",
3 = ""
},
d = ""
}
基本上我还需要检查contact_sub1 是否有空值并将值替换为空的string。
【问题讨论】:
-
方法相同但递归
-
也使用递归来处理“子对象”。
标签: c# propertyinfo