我正在一个项目中,我需要将.net类“翻译”为打字稿,但我正在为以下问题苦苦挣扎:
我试图在运行时知道属性AnotherClass.property1.genericProperty
是否为类型T
,但是我总是将MyClass
作为类型,检查它的正确方法是什么?
class MyGenericClass<T>
{
public T genericProperty { get; set; }
}
class AnotherClass
{
public MyGenericClass<MyClass> property1 { get; set; }
public MyClass regularProperty { get; set; }
}
我希望的打字稿:
interface MyGenericClass<T> {
genericProperty: T;
}
我现在正在得到什么:
interface MyGenericClass<T> {
genericProperty: MyClass;
}
答案 0 :(得分:0)
在@Mark Gravell评论之后,我能够解决我的问题,我做了什么:
已使用
AnotherClass.property1.PropertyType.GetGenericTypeDefinition().GetProperty("genericProperty").PropertyType.Name
代替
AnotherClass.property1.PropertyType.GetProperty("genericProperty").PropertyType.Name
现在我得到了预期的结果。