0
REST Webサービスが提供するJSONを逆シリアル化するのに問題があります。 これが問題DataContractJsonSerializer ReadObjectがNULL値を返しますか?
class Program
{
static void Main(string[] args)
{
RestResponse r = readFromWeb("http://www.808.dk/?code-csharp-httpwebrequest");
Console.ReadKey();
}
static RestResponse readFromWeb(string url)
{
HttpWebRequest request = HttpWebRequest.Create("http://services.groupkt.com/country/get/all") as HttpWebRequest;
request.ContentType = "application/json";
request.Method = "GET";
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
Stream webStream = response.GetResponseStream();
DataContractJsonSerializer json = new DataContractJsonSerializer(typeof(RestResponse));
RestResponse resttresponse = (RestResponse)json.ReadObject(webStream);
return resttresponse;
}
}
とのDataContractのクラス
[DataContract]
public class RestResponse
{
[DataMember]
public List<string> messages { get; set; }
[DataMember]
public List<City> result { get; set; }
}
[DataContract]
public class City
{
[DataMember]
public string name { get; set; }
[DataMember]
public string alpha2_code { get; set; }
[DataMember]
public string alpha3_code { get; set; }
}
任意の提案を解決するための私の提案はありますか? コード通り。
あなたはDataContractJsonSerializerを使用することに限定されていますか? Newtonsoft.Jsonを使用すると、JSON –
を使用して作業するときにはるかに簡単で堅牢ですが、70-483試験の準備をしているので、DataContractJsonSerializerを使用する必要があります。あなたの貢献に感謝し、私はNewtonsoft.jsonフレームワークを使用しようとします –