VSTO excel,在试图将dynamic转为Object[]时出现“无法将“System.Object[*]”的对象强制转换System.Object[]“
在VSTO ,excel中使用了ListObject,然后对其中一列使用了自动筛选,我希望得到筛选所用的条件,代码如下:foreach (Excel.Filter ft in testParam.AutoFilter.Filters) //testParam是Excel.ListObject对象
{
if (ft.On)
{
temp = ft.Count;
if (ft.Count == 2)
{
filterList.Add(ft.Criteria1); //filterList是个List<string>对象
filterList.Add(ft.Criteria2);
}
else
{
object[] temp2 = ft.Criteria1 as object[];
string i = (temp2 is object[]).ToString();
}
}
}
ft.Criteria1 中的值就是所用的筛选条件,在监视中看到结果如下:
看起来是个string类型的数组,但使用object[] temp = ft.Criteria1 as object[];得到的确是空值。
使用(object[])(ft.Criteria1)时可以有如下提示:"无法将类型为“System.Object[*]”的对象强制转换为类型“System.Object[]”。"
使用监视窗口看到如下结果:
这都是什么情况啊!请哪位大神指点下!用的是VS2010 .net4.0
补充:.NET技术 , C#