前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >silverlight向服务器post数据类

silverlight向服务器post数据类

作者头像
用户1172164
发布2018-01-16 13:50:22
9750
发布2018-01-16 13:50:22
举报
文章被收录于专栏:我和未来有约会
代码语言:js
复制
using System;
 using System.Net;
 using System.Windows;
 using System.Windows.Controls;
 using System.Windows.Documents;
 using System.Windows.Ink;
 using System.Windows.Input;
 using System.Windows.Media;
 using System.Windows.Media.Animation;
 using System.Windows.Shapes;
 using System.IO;
 
 
 public class HttpClient
 {
 private WebRequest webRequest = null;
 public delegate void ResponseEventHandler(String responseResult);
 public event ResponseEventHandler onResponseEventHandler;
 public delegate void RequestEventHandler();
 public event RequestEventHandler onRequestEventHandler;
 public string PostData { get; set; }
 
 public HttpClient(Uri clientUri)
     {
         Uri endpoint = clientUri;
         webRequest = WebRequest.Create(endpoint);
         webRequest.ContentType = "application/x-www-form-urlencoded";
         webRequest.Method = "POST";
     }
 
 public void Post()
     {
         webRequest.BeginGetRequestStream(new AsyncCallback(RequestReady), webRequest);
     }
 private void RequestReady(IAsyncResult asyncResult)
     {
 if (this.onRequestEventHandler != null)
         {
 this.onRequestEventHandler();
         }
         WebRequest request = asyncResult.AsyncState as WebRequest;
         Stream requestStream = request.EndGetRequestStream(asyncResult);
 
 using (StreamWriter writer = new StreamWriter(requestStream))
         {
             writer.Write(this.PostData);
             writer.Flush();
             writer.Close();
         }
         webRequest.BeginGetResponse(new AsyncCallback(ResponseReady), webRequest);
     }
 private void ResponseReady(IAsyncResult asyncResult)
     {
 if (this.onResponseEventHandler != null)
         {
             WebRequest request = asyncResult.AsyncState as WebRequest;
             WebResponse response = request.EndGetResponse(asyncResult);
 
 using (Stream responseStream = response.GetResponseStream())
             {
                 String responseResult = String.Empty;
 try
                 {
                     StreamReader reader = new StreamReader(responseStream);
                     responseResult = reader.ReadToEnd();
                 }
 catch (WebException er)
                 {
                     responseResult = er.Message;
                 }
 catch (Exception er)
                 {
                     responseResult = er.Message;
                 }
 this.onResponseEventHandler(responseResult);
             }
         }
     }
 }
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2008-08-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档