さまざまな列挙型または非列挙型 (通常のクラス インスタンス) のリストになるオブジェクトがあります。
オブジェクトがリストかどうかを確認するのは簡単です:
myobject is IList
これで、リストの要素のタイプを確認できます。
(myobject as IList)[0].GetType().IsEnum
しかし、まだ要素がない場合、リストの要素が列挙型であるかどうかを確認する方法は?
if (myobject is IList)
{
if ((myobject as IList).Count > 0)
{
if ((myobject as IList)[0].GetType().IsEnum)
return true;
}
else
{
// how to check if the list is enum list here ?
}
}