json 到使用 TypeName 的实例

我试图找到一种方法来从类的完整类型名称和实例的 json 表示创建类的实例。


var classTypeFullName = "something.type";

var classType = Type.GetType(classTypeFullName);

var instanceJson = "{....}";

var classInstance = JsonConvert.DeserializeObject(instanceJson, classType);

我的问题是它总是返回一个 JObject,我需要它来返回实例类型。如果我在代码运行之前知道类型,我通常会执行以下操作:


var classInstance = JsonConvert.DeserializeObject<T>(instanceJson);

任何人都可以帮忙吗?


宝慕林4294392
浏览 173回答 2
2回答

胡子哥哥

如果您正在寻找此类问题的答案。C# Core2.2 应用程序未加载程序集,因为它是引用的 dll 的依赖项。因此 classType 为空,因此反序列化总是作为 JObject 而不是期望类型返回。

Helenr

试试这个,我前段时间做过。convert yr Json to dynamic dynamicObj, and have the full assembly namevar type = Type.GetType("something.type");var obj = Convert.ChangeType(dynamicObj.Result, type);
打开App,查看更多内容
随时随地看视频慕课网APP