我有一个要覆盖的方法:
public override bool CanConvert(Type objectType)
(注意:我不能修改超类。)无论如何,在这个被覆盖的方法中,我想做:
return typeof(MyClass<T, I>).IsAssignableFrom(objectType);
MyClass 是抽象的。我自己写的。
Intellisense 强调了通用部分。所以我必须使方法通用。但是随后方法签名与覆盖不兼容。
我应该怎么办?
编辑:
我的课:
MyClass<T,I> where T : MyClass<T,I>
编辑2:
包含方法的类:
public class ReferencesJsonConverter : JsonConverter
我需要添加吗
<T,I>
到 ReferencesJsonConverter?这是不幸的,因为这个类是这样使用的:
[JsonConverter(typeof(ReferencesJsonConverter))]
public virtual WhateverClass whateverclass {get;set;}
T 是任何类...
我也有这个方法需要重写
public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer)
我想要做:
var e = value as MyClass<T, I>;
在那里。所以我想我真的需要添加
<T,I>
到班级本身?