我有一个像这样的JSON文件
{
...
...
...
"ExternalApp": {
"BaseUrl": "https://xxx.xxx.com",
"CallbackUrl": "https://localhost/TestCallBack",
"TokenKey": "xxxx",
"TokenSecret": "xxxx"
}
...
...
...
}
如您所见,JSON文件包含许多字段。设置之一是 ExternalApp 。我需要将此 ExternalApp 读入我的设置类。在.NET Core中,使用ConfigurationBuilder
非常简单。但是如何在旧版类(非.NET Core)中做到这一点。
public class ExternalAppSetting
{
public string BaseUrl;
public string CallbackUrl;
public string TokenKey;
public string TokenSecret;
...
...
...
}
感谢您的帮助。
答案 0 :(得分:1)
以下是使用Json.NET的方法:
string json = @"{
""SomeProp1"": ""SomePropValue"",
""ExternalApp"": {
""BaseUrl"": ""https://xxx.xxx.com"",
""CallbackUrl"": ""https://localhost/TestCallBack"",
""TokenKey"": ""xxxx"",
""TokenSecret"": ""xxxx""
},
""SomeProp2"": ""SomeProp2Value"",
}";
JObject o = JObject.Parse(json);
JToken jt = o.SelectToken("ExternalApp");
ExternalAppSetting eas = jt.ToObject<ExternalAppSetting>();
答案 1 :(得分:1)
您可以使用JSON.NET进行此操作。 试试这个:
ExternalAppSetting externalAppSetting = new ExternalAppSetting();
var token = JToken.Parse(json);
var externalApp = token.SelectToken("ExternalApp");
externalAppSetting.BaseUrl = externalApp["BaseUrl"].ToString();
externalAppSetting.CallbackUrl = externalApp["CallbackUrl"].ToString();
externalAppSetting.TokenKey = externalApp["TokenKey"].ToString();
externalAppSetting.TokenSecret = externalApp["TokenSecret"].ToString();
其中json是您的json字符串。