2

我可以通过使用检查单一类型

if (e.PropertyType == typeof(EntityCollection<Search_SearchCodes>))

但是我真的很想避免所有的对象EntityCollections

if (e.PropertyType == typeof(EntityCollection))

有没有办法做到这一点?

4

1 回答 1

8

您可以通过确认该类型是泛型类型并且其泛型类型定义等于EntityCollection<> 开放泛型类型来做到这一点。

var type = e.PropertyType;
var isEntityCollection = type.IsGenericType && 
    type.GetGenericTypeDefinition() == typeof(EntityCollection<>);
于 2013-09-13T20:05:19.270 回答