List<T>
のプロパティを持つジェネリッククラスを処理しようとしていました。ただし、IsAssignableFrom
を使用してプロパティをチェックすると機能しません。checkタイプがリストの場合はfalseを返します
コードスニペット:
var type = model.GetType();
var properties = type.GetProperties(BindingFlags.Public | BindingFlags.Instance);
int colorIndex = 0;
foreach (var property in properties)
{
if (typeof(List<>).IsAssignableFrom(property.PropertyType))
{
//codes here
}
}
私はここで何かが足りないのですか?なぜそれがリストであってもリストを扱っていないのはなぜですか?
オープンジェネリック型をそのように使うことはできないと思います...実際には、 'IList'をチェックするだけで十分でしょう。 –