【发布时间】:2023-03-25 14:38:01
【问题描述】:
//编辑:这不是重复的,建议的线程对我没有帮助,因为我的问题与 Newton.Json// 我将 Newtonsoft.Json 用于我的历史 Weatherapp(大学项目)。所以我选择使用 openweathermap.org。这是我的代码:
var request = (HttpWebRequest)WebRequest.Create("http://api.openweathermap.org/data/2.5/history/city?q=exampletown&start=1420135249&end=1421085649&type=hour")
var response = await request.GetResponseAsync();
var rawJson = new StreamReader(response.GetResponseStream()).ReadToEnd();
var json = JObject.Parse(rawJson);
string temp_value = json["temp"].ToObject<string>();
我总是遇到异常:NullReferenceException:对象引用未设置为对象的实例。附加信息:json 和 rawjson 不为 null,temp_value 为。当我在破旧的地方问这个问题时,我很抱歉。我是新来的人。
PS:uri 不完全正确,我将我的城镇替换为 exampletown
【问题讨论】:
-
看看json字符串长什么样会很有帮助。
-
嘿。尝试使用这个 URI:api.openweathermap.org/data/2.5/history/…
-
异常发生在哪里?如果它在
json["temp"]行中,只需在尝试访问它之前检查json["temp"]是否为空。这与 Newtonsoft.Json 无关,这确实是重复的。如果您想知道为什么json["temp"]为空,请隔离导致问题的 json sn-p。如果您尝试一次解析所有数据,您将永远找不到问题,我们也不能 -
这不再与空引用有关。问题是关键字“temp”不是 JSON 属性。但我只需要从 json 文件中获取临时文件。所以我想问我能做些什么来用 newton.json 获取这些数据
标签: c# json windows xaml openweathermap