Web services 如何在windows phone的web服务中存储设备id?
这是我的web服务url 参数: 1.设备id 2.问答式 方法:邮寄 我已检索设备id和测验类型 但我的问题是如何发送设备id和测验类型,以便将设备id存储在web服务中Web services 如何在windows phone的web服务中存储设备id?,web-services,windows-phone-7,windows-phone-8,Web Services,Windows Phone 7,Windows Phone 8,这是我的web服务url 参数: 1.设备id 2.问答式 方法:邮寄 我已检索设备id和测验类型 但我的问题是如何发送设备id和测验类型,以便将设备id存储在web服务中 void SendPost() { var url = "http://www.newsquizapp.com/webservice/get_question"; HttpWebRequest webRequest = (HttpWebRequest)WebRequest.
void SendPost()
{
var url = "http://www.newsquizapp.com/webservice/get_question";
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(url);
webRequest.Method = "POST";
webRequest.ContentType = "application/x-www-form-urlencoded";
webRequest.BeginGetRequestStream(new AsyncCallback(GetRequestStreamCallback), webRequest);
}
void GetRequestStreamCallback(IAsyncResult callbackResult)
{
HttpWebRequest webRequest = (HttpWebRequest)callbackResult.AsyncState;
Stream postStream = webRequest.EndGetRequestStream(callbackResult);
// static device id
string postData = "device_id=001&quiz_type=all";
byte[] byteArray = Encoding.UTF8.GetBytes(postData);
postStream.Write(byteArray, 0, byteArray.Length);
postStream.Close();
webRequest.BeginGetResponse(new AsyncCallback(GetResponseCallback), webRequest);
}
void GetResponseCallback(IAsyncResult callbackResult)
{
try
{
HttpWebRequest webRequest = (HttpWebRequest)callbackResult.AsyncState;
HttpWebResponse response;
response = (HttpWebResponse)webRequest.EndGetResponse(callbackResult);
Stream streamResponse = response.GetResponseStream();
StreamReader streamReader = new StreamReader(streamResponse);
var Response = streamReader.ReadToEnd();
streamResponse.Close();
streamReader.Close();
response.Close();
}
catch (WebException e)
{
// Error treatment
// ...
}
}
public void MainPage_Loaded(object sender, RoutedEventArgs e)
{
client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(download);
client.DownloadStringAsync(new Uri("http://www.newsquizapp.com/webservice/get_question"));
}
public void download(object sender, DownloadStringCompletedEventArgs e)
{
var objMain = JsonConvert.DeserializeObject<Main>(e.Result);
question = objMain.questions;
DisplayQuestion();
}
protected void DisplayQuestion()
{
rb1.Visibility = Visibility.Visible;
rb2.Visibility = Visibility.Visible;
rb3.Visibility = Visibility.Visible;
rb4.Visibility = Visibility.Visible;
Question objQue = question[counter];
txtquestion.Text = objQue.questionTitle;
rb1.Content = objQue.answers[0].answer;
rb2.Content = objQue.answers[1].answer;
rb3.Content = objQue.answers[2].answer;
if (objQue.answers.Count == 3)
{
rb4.Visibility = Visibility.Collapsed;
}
else
{
rb4.Visibility = Visibility.Visible;
rb4.Content = objQue.answers[3].answer;
}
}
protected void radio_checked(object sender, RoutedEventArgs e)
{
btnFinish.Visibility = Visibility.Collapsed;
btnSubmit.Visibility = Visibility.Visible;
}
protected void btnsubmit_click(object sender, RoutedEventArgs e)
{
Question que = question[counter];
var correctAnswerId = que.correctAnswerId;
string answer = string.Empty;
if (que.answers[0].answerId == correctAnswerId)
{
answer = que.answers[0].answer;
}
if (que.answers[1].answerId == correctAnswerId)
{
answer = que.answers[1].answer;
}
if (que.answers[2].answerId == correctAnswerId)
{
answer = que.answers[2].answer;
}
if (que.answers.Count == 3)
{
rb4.Visibility = Visibility.Collapsed;
}
else if (que.answers[3].answerId == correctAnswerId)
{
answer = que.answers[3].answer;
}
if (rb1.IsChecked == true && que.answers[0].answerId == correctAnswerId)
{
txtanswer.Text = que.answers[0].answer;
rb1.Visibility = Visibility.Collapsed;
rb2.Visibility = Visibility.Collapsed;
rb3.Visibility = Visibility.Collapsed;
rb4.Visibility = Visibility.Collapsed;
}
else if (rb1.IsChecked == true && que.answers[0].answerId != correctAnswerId)
{
rb1.Visibility = Visibility.Visible;
rb2.Visibility = Visibility.Collapsed;
rb3.Visibility = Visibility.Collapsed;
rb4.Visibility = Visibility.Collapsed;
txtanswer.Text = answer;
}
else if (rb2.IsChecked == true && que.answers[1].answerId == correctAnswerId)
{
txtanswer.Text = que.answers[1].answer;
rb1.Visibility = Visibility.Collapsed;
rb2.Visibility = Visibility.Collapsed;
rb3.Visibility = Visibility.Collapsed;
rb4.Visibility = Visibility.Collapsed;
}
else if (rb2.IsChecked == true && que.answers[1].answerId != correctAnswerId)
{
rb1.Visibility = Visibility.Collapsed;
rb2.Visibility = Visibility.Visible;
rb3.Visibility = Visibility.Collapsed;
rb4.Visibility = Visibility.Collapsed;
txtanswer.Text = answer;
}
else if (rb3.IsChecked == true && que.answers[2].answerId == correctAnswerId)
{
txtanswer.Text = que.answers[2].answer;
rb1.Visibility = Visibility.Collapsed;
rb2.Visibility = Visibility.Collapsed;
rb3.Visibility = Visibility.Collapsed;
rb4.Visibility = Visibility.Collapsed;
}
else if (rb3.IsChecked == true && que.answers[2].answerId != correctAnswerId)
{
rb1.Visibility = Visibility.Collapsed;
rb2.Visibility = Visibility.Collapsed;
rb3.Visibility = Visibility.Visible;
rb4.Visibility = Visibility.Collapsed;
txtanswer.Text = answer;
}
else if (que.answers.Count == 3)
{
rb4.Visibility = Visibility.Collapsed;
}
else if (rb4.IsChecked == true && que.answers[3].answerId == correctAnswerId)
{
txtanswer.Text = que.answers[3].answer;
rb1.Visibility = Visibility.Collapsed;
rb2.Visibility = Visibility.Collapsed;
rb3.Visibility = Visibility.Collapsed;
rb4.Visibility = Visibility.Collapsed;
}
else if (rb4.IsChecked == true && que.answers[3].answerId != correctAnswerId)
{
rb1.Visibility = Visibility.Collapsed;
rb2.Visibility = Visibility.Collapsed;
rb3.Visibility = Visibility.Collapsed;
rb4.Visibility = Visibility.Visible;
txtanswer.Text = answer;
}
btnNext.Visibility = Visibility.Visible;
}
protected void btnnext_click(object sender, RoutedEventArgs e)
{
counter++;
if (counter >= question.Count)
{
txtanswer.Text = "no more question right now....";
}
else
{
DisplayQuestion();
}
}
}
void SendPost()
{
变量url=”http://www.newsquizapp.com/webservice/get_question";
HttpWebRequest webRequest=(HttpWebRequest)webRequest.Create(url);
webRequest.Method=“POST”;
webRequest.ContentType=“application/x-www-form-urlencoded”;
BeginGetRequestStream(新的AsyncCallback(GetRequestStreamCallback),webRequest);
}
void GetRequestStreamCallback(IAsyncResult callbackResult)
{
HttpWebRequest webRequest=(HttpWebRequest)callbackResult.AsyncState;
Stream postStream=webRequest.EndGetRequestStream(callbackResult);
//静态设备id
string postData=“设备id=001&测验类型=all”;
byte[]byteArray=Encoding.UTF8.GetBytes(postData);
Write(byteArray,0,byteArray.Length);
postStream.Close();
BeginGetResponse(新的异步回调(GetResponseCallback),webRequest);
}
void GetResponseCallback(IAsyncResult callbackResult)
{
尝试
{
HttpWebRequest webRequest=(HttpWebRequest)callbackResult.AsyncState;
HttpWebResponse;
response=(HttpWebResponse)webRequest.EndGetResponse(callbackResult);
streamResponse=response.GetResponseStream();
StreamReader StreamReader=新StreamReader(streamResponse);
var Response=streamReader.ReadToEnd();
streamResponse.Close();
streamReader.Close();
response.Close();
}
捕获(WebE例外)
{
//错误处理
// ...
}
}
已加载公共无效主页(对象发送方、路由目标)
{
client.DownloadStringCompleted+=新的DownloadStringCompletedEventHandler(下载);
client.DownloadStringAsync(新Uri(“http://www.newsquizapp.com/webservice/get_question"));
}
公共void下载(对象发送方,下载StringCompletedEventArgs e)
{
var objMain=JsonConvert.DeserializeObject(e.Result);
问题=objMain.questions;
显示问题();
}
受保护的无效显示问题()
{
rb1.可见性=可见性。可见;
rb2.可见性=可见性.可见;
rb3.可见性=可见性.可见;
rb4.可见性=可见性.可见;
问题objQue=问题[计数器];
txtquestion.Text=objQue.questionTitle;
rb1.Content=objQue.answers[0]。answer;
rb2.Content=objQue.answers[1]。answer;
rb3.Content=objQue.answers[2]。answer;
if(objQue.answers.Count==3)
{
rb4.可见性=可见性。已折叠;
}
其他的
{
rb4.可见性=可见性.可见;
rb4.Content=objQue.answers[3]。answer;
}
}
已检查受保护的无效无线电(对象发送器,路由目标e)
{
btnFinish.Visibility=可见性.已折叠;
btnSubmit.Visibility=可见性.Visibility;
}
受保护的无效btnsubmit\u单击(对象发送者,路由目标e)
{
问题Q=问题[计数器];
var correctAnswerId=que.correctAnswerId;
string-answer=string.Empty;
if(que.answers[0].answerId==correctAnswerId)
{
答案=que。答案[0]。答案;
}
if(que.answers[1].answerId==correctAnswerId)
{
答案=que。答案[1]。答案;
}
if(que.answers[2].answerId==correctAnswerId)
{
答案=que。答案[2]。答案;
}
如果(que.answers.Count==3)
{
rb4.可见性=可见性。已折叠;
}
else if(que.answers[3]。answerId==correctAnswerId)
{
答案=que。答案[3]。答案;
}
if(rb1.IsChecked==true&&que.answers[0]。answerId==correctAnswerId)
{
txtanswer.Text=que.answers[0]。answer;
rb1.可见性=可见性。已折叠;
rb2.可见性=可见性。已折叠;
rb3.可见性=可见性。已折叠;
rb4.可见性=可见性。已折叠;
}
else if(rb1.IsChecked==true&&que.answers[0]。answerId!=correctAnswerId)
{
rb1.可见性=可见性。可见;
rb2.可见性=可见性。已折叠;
rb3.可见性=可见性。已折叠;
rb4.可见性=可见性。已折叠;
Text=答案;
}
else if(rb2.IsChecked==true&&que.answers[1]。answerId==correctAnswerId)
{
txtanswer.Text=que.answers[1]。答案;
rb1.可见性=可见性。已折叠;
rb2.可见性=可见性。已折叠;
rb3.可见性=可见性。已折叠;
rb4.可见性=可见性。已折叠;
}
else if(rb2.IsChecked==true&&que.answers[1]。answerId!=correctAnswerId)
{
rb1.可见性=可见性。已折叠;
rb2.可见性=可见性.可见;
rb3.可见性=可见性。已折叠;
rb4.可见性=可见性。已折叠;
Text=答案;
}
else if(rb3.IsChecked==true&&que.answers[2]。answerId==correctAnswerId)
{
txtanswer.Text=que.answers[2]。答案;
rb1.可见性=可见性。已折叠;
rb2.可见性=可见性。已折叠;
rb3.可见性=可见性。已折叠;
rb4.可见性=可见性。已折叠;
}
else if(rb3.IsChecked==true&&que.answers[2]。answerId!=correctAnswerId)
Uri uri = new Uri("http://www.newsquizapp.com/webservice/get_question");
string data = "device_id=123&quiz_type=all";
WebClient wc = new WebClient();
wc.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";
wc.UploadStringAsync(uri, data);
wc.UploadStringCompleted += wc_UploadComplete;
public void wc_UploadComplete(object sender, UploadStringCompletedEventArgs e)
{
string result = e.Result.ToString();
MessageBox.Show(result);
}