0
這可能是一個簡單的\新手的問題,但我使用返回JSON服務,因爲這樣的如何讀取從c# Silverlight中的服務返回的json對象?
{ 「員工」:[{ 「ID」: 「1」, 「名」 :約翰史密斯」。 }]}
我想讀返回的JSON,如下面的代碼。如果我調試‘e.Result.Length’是正確的,所以我認爲服務是好的並返回正確的信息
但我的問題我如何從e.Result獲取信息?
我正在使用DataContractJsonSerializer不正確,這兩種方法我得到空對象或空屬性?
是否有其他方法來讀取返回值或調用服務?
注意我在Silverlight中這樣做,所以如果有一個首選的方法或不同的方法來做到這一點,我想知道。
感謝
private void CallService(string url){
var webClient = new WebClient();
webClient.OpenReadCompleted += completed;
webClient.OpenReadAsync(new Uri(url));
}
private void completed(object sender, OpenReadCompletedEventArgs e)
{
//tried this
var jsonSerializer = new DataContractJsonSerializer(typeof(employee));
var emps= jsonSerializer.ReadObject(e.Result) as employee;
//and tried this
var jsonSerializer = new DataContractJsonSerializer(typeof(List<employee>));
var emps= jsonSerializer.ReadObject(e.Result) as List<employee>;
}
[DataContract]
internal class employee
{
[DataMember]
public string id;
[DataMember]
public string name;
}
另外一個需要注意的一點是事實,在你的代碼僱員類是內部的,這可能會導致一些鑄造問題。不知道,但只是想我會提到它。 – 2011-05-18 17:40:03