您的位置:首页 > 其它

winform程序访问一个web方法,传递参数,返回数据

2012-07-30 09:48 801 查看
/// <summary>
/// 获取web中接口,返回一个xml,把xml转化为Dataset
/// </summary>
/// <returns></returns>
public DataSet GetHttpWebRequest()
{
string time = this.datetime.Value.ToString();//获取时间
string account = this.txtAccount.Text.ToString().Trim();//获取帐号
string pwd = this.txtpwd.Text.ToString().Trim();//获取密码
pwd = Encrypt3DES("25585455", "v6es3d81");//对密码进行3des加密
//拼接URL
string formUrl = "http://www.8000yi.com/Interface/GetWaitticketOrder.aspx";
//把参数编码一下
string formData = "WaitTicket=" + HttpUtility.UrlEncode("<WaitTicket><Account>szx168b</Account><Password>" + pwd + "</Password><Gettime>2012-03-08 19:18:00</Gettime></WaitTicket>");
string formData1 = "WaitTicketDetails=" + HttpUtility.UrlEncode("<WaitTicketDetails><Account>szx168b</Account><Password>" + pwd + "</Password><OrderID>I634790038020066065</OrderID></WaitTicketDetails>");

CookieContainer cookieContainer = new CookieContainer();

formUrl = formUrl + "?" + formData;
// 设置提交的相关参数
HttpWebRequest request = WebRequest.Create(formUrl) as HttpWebRequest;

request.Method = "GET";
request.KeepAlive = false;
request.AllowAutoRedirect = true;
request.ContentType = "application/x-www-form-urlencoded";
request.UserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.648; .NET CLR 3.5.21022; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)";
request.CookieContainer = cookieContainer;

HttpWebResponse SendSMSResponse = (HttpWebResponse)request.GetResponse();
StreamReader SendSMSResponseStream = new StreamReader(SendSMSResponse.GetResponseStream());

string strRespone = SendSMSResponseStream.ReadToEnd();
DataSet ds = XmlToDataSet(strRespone);
if (ds == null || ds.Tables == null || ds.Tables.Count < 0)
{
MessageBox.Show("暂时没有需要出票的订单!");
}
else
{
this.dataGridView.DataSource = ds.Tables[0];
}
SendSMSResponse.Close();
SendSMSResponseStream.Close();

return ds;
}
web请问一个页面,发参数过去
WebRequest request = WebRequest.Create(url);
WebResponse response = request.GetResponse();
Stream resStream = response.GetResponseStream();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐