繁体   English   中英

尝试使用JObject从文件解析json时出现C#asp.net错误

[英]C# asp.net error when trying to parse json from a file using JObject

这是我要运行的代码:

JObject configInfo = JObject.Parse(File.ReadAllText("config.json"));

const string ServerName = (string)configInfo["servername"];

似乎很简单,但我不断收到此错误:

字段初始化程序不能引用非静态字段,方法或属性'AdminTools_Admin_ManageElements.configInfo'

有人可以告诉我这是怎么回事吗?

该错误表明您正在该类级别进行此操作,作为该类中初始化字段的一部分:

class SomeClass
{
    JObject configInfo = JObject.Parse(File.ReadAllText("config.json"));

    const string ServerName = (string)configInfo["servername"];
}

错误告诉您的是,您无法像这样的其他字段的初始化那样初始化字段。 (并且您当然不能从运行时动态值创建常量。)

这将是在方法内部执行的操作。 暂不考虑从构造函数中读取文件的潜在参数,请考虑以下内容:

class SomeClass
{
    JObject configInfo;
    string ServerName;

    public SomeClass()
    {
        configInfo = JObject.Parse(File.ReadAllText("config.json"));
        ServerName = (string)configInfo["servername"];
    }
}

基本上,您试图在类的定义中放置过多的动态逻辑,而该逻辑需要在类的操作中发生。 定义只是结构。 方法中会发生诸如解析输入和动态设置值之类的事情。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM