我正在使用反射读取XML文件,但总是遇到一个错误告诉我无法将字符串转换为字符串数组(我不想这样做!)我认为我的问题的原因是我无法确定对象的类型是否为数组。以下是我目前正在使用的代码(不起作用),但我也尝试过使用 if(mi[i].GetType() == typeof(string[]))
也没有起作用。
MemberInfo[] mi = objType.GetProperties();
for (int i = 0; i < mi.Length; i++)
{
if (mi[i].GetType().IsArray)
{
}
else
{
//Code path is running through here
}
文件已经正确读入。
编辑:为了更好地解释,我需要添加结构到我的 objType
中。
objType
是一个包含 string[] 变量的类,在这种情况下被称为 mi[i]
。
objType.IsArray
吗? - Tim Schmeltermi[i]
的类型是MemberInfo
。MemberInfo 不是一个数组。 - pleinolijfPropertyType
属性,mi
的类型应该是PropertyInfo[]
。 - Rik