我有Section一个有 s 列表的类ContentItem。ContentItem有许多子类TextContentItem,如ImageContentItem, 等。所有这些子类都映射到数据库(使用类和子类映射)。
我需要能够检索Section具有填充的确切子类实例的实例ContentItem。
我有Section一个有 s 列表的类ContentItem。ContentItem有许多子类TextContentItem,如ImageContentItem, 等。所有这些子类都映射到数据库(使用类和子类映射)。
我需要能够检索Section具有填充的确切子类实例的实例ContentItem。
使用IEnumerable<T>扩展方法OfType<T>过滤集合:
var filter = section.ContentItems.OfType<TextContentItem>();
如果您的集合非常大并且您希望避免加载所有内容项,那么我将填充由 Section 类和所需内容项的集合组成的数据传输对象 (DTO)。我不建议在域模型中部分加载集合。