我正在尝试从基类中获取当前类类型,并将其作为参数传递。
代码应该执行以下操作:
public BaseClass
{
public BaseClass()
{
var MyType = GetType();
var A = JsonConvert.DeserializeObject<MyType>(...);
}
}
因此,如果像这样实例化:
public class MyObject : BaseClass
那么最后一个调用将做:
var A = JsonConvert.DeserializeObject<MyObject>(...);
但我找不到如何将类型作为参数传递。
知道如何实现这一点吗?
您可以使用
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
您必须在某个时候将结果转换为您想要的结果。
文档可在此处获得