我正在使用反射来读取一个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
是包含字符串[]变量,在这种情况下,被称为mi[i]
你确定你不想检查'objType.IsArray'呢? –
'mi [i]'的类型是'MemberInfo'。 [MemberInfo](http://msdn.microsoft.com/en-us/library/System.Reflection.MemberInfo.aspx)不是一个数组。 – pleinolijf
@TimSchmelter我已经更新了我的问题以更好地解释 – Sayse