我试图从基类获取当前类类型,并将其作为参数传递。
代码应该是这样的:
public BaseClass
{
public BaseClass()
{
var MyType = GetType();
var A = JsonConvert.DeserializeObject<MyType>(...);
}
}
所以,如果它是这样的实例:
public class MyObject : BaseClass
然后最后一次调用会:
var A = JsonConvert.DeserializeObject<MyObject>(...);
但我无法找到如何将该类型作为参数传递。
任何想法如何实现这一目标?
答案 0 :(得分:0)
您可以使用JsonConvert.DeserializeObject(string value, Type type)
。
它允许您指定要构建的对象的类型。
public BaseClass
{
public BaseClass()
{
var MyType = GetType();
var A = JsonConvert.DeserializeObject("{ json blob }", MyType);
}
}
A
的类型为MyType
。
JsonConvert.DeserializeObject
返回object
,您必须将结果投射到您想要的位置。
文档可用here