【发布时间】:2011-07-27 09:18:13
【问题描述】:
这是我的类定义:
public abstract class AbstractEntity : ...
public partial class AbstractContactEntity : AbstractEntity, ...
public sealed class EntityCollectionProxy<T> : IList<T>, System.Collections.IList
where T : AbstractEntity
现在我从一个委托人那里得到一个对象,我想强制转换它,但它并没有像我期望的那样工作。
var obj = resolver.DynamicInvoke (this.entity);
var col = obj as EntityCollectionProxy<AbstractEntity>;
obj 的类型为 EntityCollectionProxy<AbstractContactEntity>。
但col 为空。
如果我尝试常规转换 (var col = (Entity...) obj),我会遇到异常。
我希望它可以工作,因为类型是连贯的。 我错过了什么?
【问题讨论】:
-
你能找到一个和我问的一样的问题吗?