私は実際に PHP Web サービスからの JSON 要求応答を ac# オブジェクトに解析しようとしています。
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 文字列があると問題が発生し、どうすれば対処できるか知りたいですか?
また、ときどき null フィールドがあるのですが、どうすればそれらを無視できますか?
助けてくれてありがとう!:-)
PS必要に応じて、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);
}