如何从IList <>获取项目数作为对象?

rem*_*mio 12 c# generics reflection ilist casting

在一个方法中,我得到一个object.

在某些情况下,这object可能是IList"某事"(我无法控制这个"某事").

我在尝试着:

  1. 确定此对象是IList(某事物)
  2. 把它object变成一个" IList<something>"就可以得到Count它.

现在,我陷入困境并寻找想法.

dkn*_*ack 21

您可以检查您的object工具是否IList使用is.

然后你可以投你objectIList计算.

object myObject = new List<string>();

// check if myObject implements IList
if (myObject  is IList)
{
   int listCount = ((IList)myObject).Count;
}
Run Code Online (Sandbox Code Playgroud)