我正在编写一个网络应用程序,其中id请求对象,并通过委托回调返回:
public static void requestById(T id, Action callback) where ModelType : AbstractModel { }
为方便起见,我有一种方法可以一次请求多个对象:
public static void requestByIds(List ids, Action > callback) where ModelType : AbstractModel
, new() { }
接下来我有一个抽象的模型对象,它有多个子节点,以及一个请求它的子节点的方法:
public abstract void requestSections(Action> callback);
然后是具体类中的实现:
public override void requestSections(Action> callback) { Section.requestByIds
(this.sectionIds, callback); }
突然间,我找到了代表
Action>
与...不相容
Action>
这是C#中逆变的限制吗?有没有任何解决方法,所以我可以让我的覆盖方法工作?谢谢