[英]WebServices Consumes JSON data with Silverlight 5
首先,我正在使用View-ModelsViews-Model,並且對Silverlight還是陌生的。
我想從Internet上的其他應用程序獲取JSON數據並將其顯示在網格中。
在ViewModelPage上,我有這個:
public void SetBasicAuthHeader(WebRequest req, String userName, String userPassword)
{
string authInfo = userName + ":" + userPassword;
authInfo = Convert.ToBase64String(Encoding.Default.GetBytes(authInfo));
req.Headers["Authorization"] = "Basic " + authInfo;
}
public void Request()
{
// create the http request
HttpWebRequest httpWebRequest = WebRequest.CreateHttp("Myurl");
httpWebRequest.Method = "GET";
httpWebRequest.Accept = "application/json";
SetBasicAuthHeader(httpWebRequest, "mylogin", "mypassword");
// get the response asynchronously
httpWebRequest.BeginGetResponse(OnGetResponseCompleted, httpWebRequest);
}
public void OnGetResponseCompleted(IAsyncResult ar)
{
var httpWebRequest = (HttpWebRequest)ar.AsyncState;
// get the response
var response = httpWebRequest.EndGetResponse(ar);
// deserialize json
var jsonSerializer = new DataContractJsonSerializer(typeof(Users));
var responseObject = (ListUtilisateursRest)jsonSerializer.ReadObject(response.GetResponseStream());
// display on the view
Deployment.Current.Dispatcher.BeginInvoke();
}
我還使用以下方法創建了一個可移植庫:
[DataContract]
public class Users
{
[DataMember(Name = "Users")]
private List<String> UsersList = new List<String>();
}
我知道我必須在“ BeginInvoke”中添加一些內容以將數據綁定到視圖,但是我不知道該怎么做,您能幫我嗎?
謝謝,
舉個例子。
<ListBox DataContext="{Binding Data}" ></ListBox>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.