给定1:
public abstract class BaseEntityViewModel<T> where T : RealmObject
{
public T SomeMethod()`;
//какие-то проперти
}
public class SomeClass1 :RealmObject {}
public class SomeClass2 :RealmObject {}
给定2:
IList<T> origObjList; //List<RealmObject> -- получаю его в рантайме
IEnumerator<T> currObjList; // List<BaseEntityViewModel<SomeClass>> -- получаю его в рантайме
所以这里有2个问题:
我该怎么说:
((where have SomeMethod)currObjList).SomeMethod();
即如何告诉预编译器我可以调用方法
SomeMethod()
而不直接指定类型?(只是事先不知道,也不能指定父类或接口) 就算拿到对象作为方法工作,也没关系。我知道我可以
Т
在运行时从 given2 获取类型值;如何在运行时转换此 T 中最后一项的结果?TypeSomeType
鉴于转换可能不起作用......存储在 someTypeVariable 中时如何记录“(TypeSomeType)objectRez”
1 个回答