【发布时间】:2012-04-23 16:23:37
【问题描述】:
我实际上是在尝试将来自我的 PHP Web 服务的 JSON 请求响应解析为一个 c# 对象。
我找到了一些使用 json.net 的代码示例,然后我从我的 Wine 类中制作了这段代码:
public Wine(string json)
{
JObject jObject = JObject.Parse(json);
BottleName = (string)jObject["name"];
Category = (string)jObject["category"];
Prize50 = Double.Parse((string)jObject["prize_50"]);
Prize75 = Double.Parse((string)jObject["prize_75"]);
Prize150 = Double.Parse((string)jObject["prize_150"]);
Prize300 = Double.Parse((string)jObject["prize_300"]);
}
如果一个只有 1 个响应,就像
"{\"id\":\"2\",\"name\":\"Pinot noir\",\"loc_wine\":\"",\"category\":\"Red\",\"prize_50\":\"12.800000\",\"prize_75\":\"16.500000\",\"prize_150\":\"0.000000\",\"prize_300\":\"0.000000\"} "
但是当我的 json 响应中有另一个 Json 字符串时我遇到了麻烦,我希望知道如何处理它?
而且我有时有空字段,我该如何忽略它们?
感谢您的帮助! :-)
附:如果需要,这就是我从 PHP 文件发送数据的方式:
$req = "SELECT *
FROM t_wine
WHERE name= \"Pinot noir\""; // for test purpose
$res = mysqli_query($connection, $req);
while($data= mysqli_fetch_assoc($res)) {
extract ($data);
echo json_encode($data);
}
【问题讨论】:
-
“当我的 json 响应中有另一个 Json 字符串并且我希望知道如何处理它时”是什么意思?你的意思是你的 json 包含多个
Wine的实例,还是你的意思是在同一个字符串中有第二个不同的类? -
我的意思是我还有另一个 Wine 实例
标签: c# web-services c#-4.0 json.net