将JSON字符串反序列化为当前类

3

我在我的C#模型中有一个Load函数,在其中我希望能够将JSON字符串反序列化为当前模型,例如:

this = JsonConvert.DeserializeObject<Settings>(leJson);

但显然我做不到,我正在思考如何实现它。


可能存在您的模型和Json不同的情况,请展示您的类和Json样本数据。 - Sudhakar Tillapudi
好的,错误出现在编译器中,而不是运行时。如果我尝试给 this 赋值,错误就会出现,错误信息为“无法分配给 '<this>',因为它是只读的”。 - Alexander Forbes-Reed
为什么要使用 this,将其分配给类引用变量。 - Sudhakar Tillapudi
我该如何在类内部实现这个功能? - Alexander Forbes-Reed
1个回答

3

不可能做到。您不能从实例内部写入this变量。您应该从外部类中进行这样的操作。或者让您的方法返回类实例:

public static Settings GetSettings()
{
    return JsonConvert.DeserializeObject<Settings>(leJson);
}

那么,没有办法在类内部加载和应用设置吗? - Alexander Forbes-Reed
啊,好吧,这很烦人,但没关系。 - Alexander Forbes-Reed
@AgentFire,他们怎么样? - Darin Dimitrov
@DarinDimitrov DeserializeObjectAsync 返回 Task,所以你可能想要等待它。否则,Task<Settings> 不能简单地转换为 Settings - AgentFire
@DarinDimitrov 好的,我让你来做那个 :P - AgentFire
显示剩余2条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接