我有一個必須返回JSON的wcf服務。我的代碼如下所示:WCF迴歸糟糕JSON
{ 「areaGetStreetTypesResult」:
public String areaGetStreetTypes(int city_id, int language_id) { string json = ""; string responseList = "{\"triname\":\"IMP\",\"name\":\"IMPASSE\"}"; if (responseList.Length != 0){ string responseStatusJSON = "{\"status\":0, \"message\":\"Success !!!\"}"; json += "{\"responseList\":[" + responseList + "],"; json += "\"responseStatus\":" + responseStatusJSON + "}"; } else{ string responseStatusJSON = "{\"status\":1, \"message\":\"Error !!!\"}"; json += responseStatusJSON; } return json; } //my interface looks like [OperationContract] [WebInvoke(Method = "POST", UriTemplate = "areaGetStreetTypes", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped)] String areaGetStreetTypes(int city_id, int language_id);
原始格式的響應 「{\」 responseList \ 「:[{\」 triname \ 「:\」 IMP \」, \「name \」:\「IMPASSE \」}],\「responseStatus \」:{\「status \」:0,\「message \」:\「Success !!! \」}}「}
我使用php腳本進行測試。第一解碼後:
stdClass的對象(
[areaGetStreetTypesResult] => {"responseList":[{"triname":"IMP","name":"IMPASSE"}],"responseStatus":{"status":0, "message":"Success !!!"}}
)
只有在我的第二個json_decode我得到我想要的東西:GOOD JSON Response
我可以在我的服務改變什麼第一次獲得好的JSON?我只想解碼一次。
這只是一個測試。我不能實現一個固定類型,因爲我從數據庫動態獲取數據。我不知道返回的列號或列的名稱。 –