C# Winform利用POST传值方式模拟表单提交数据(Winform与网页交互)
2015-07-08 14:41
711 查看
其原理是,利用winfrom模拟表单提交数据,将要提交的参数提交给网页,网页执行代码,得到数据,然后Winform程序将网页的所有源代码读取下来,这样就达到windows应用程序和web应用程序之间传参和现实数据的效果了。
首先创建一个windows应用程序和web应用程序。
在web应用程序中,将网页切换到源代码并把源代码中一些没用的代码删掉,只保留头部,在windows应用程序读取网页源码时,这些都会被一起读下来,但这些都是没用的数据,而且删掉没什么影响。需要保留的代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
然后在Page_Load中实现功能,以下为一个将两个数相加并将和返回给winform的网页例子。
string A = Request.Form["a"].ToString();//由winform中传给网页的参数用a标识
string B = Request.Form["b"].ToString();
int C = Convert.ToInt32(A) + Convert.ToInt32(B);
Response.Write(C.ToString());//将数据写到网页中
在winform中实现传参的例子代码如下:
private void button1_Click(object sender, EventArgs e)
{
WebClient w = new WebClient();
System.Collections.Specialized.NameValueCollection VarPost = new System.Collections.Specialized.NameValueCollection();
VarPost.Add("a", textBox1.Text.Trim());//将textBox1中的数据变为用a标识的参数,并用POST传值方式传给网页
VarPost.Add("b", textBox2.Text.Trim());
//将参数列表VarPost中的所有数据用POST传值的方式传给http://申请好的域名或用IIs配置好的地址/Default.aspx,
//并将从网页上返回的数据以字节流存放到byRemoteInfo中)(注:IIS配置的时候经常没配置好会提示错误,嘿)
byte[] byRemoteInfo = w.UploadValues("http://申请好的域名或用IIs配置好的地址/Default.aspx",
"POST", VarPost);
string sRemoteInfo = System.Text.Encoding.UTF8.GetString(byRemoteInfo);
label1.Text = sRemoteInfo;
}
这样就实现了C# Winform利用POST传值方式模拟表单提交数据,在这仅供大家参考
首先创建一个windows应用程序和web应用程序。
在web应用程序中,将网页切换到源代码并把源代码中一些没用的代码删掉,只保留头部,在windows应用程序读取网页源码时,这些都会被一起读下来,但这些都是没用的数据,而且删掉没什么影响。需要保留的代码如下:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
然后在Page_Load中实现功能,以下为一个将两个数相加并将和返回给winform的网页例子。
string A = Request.Form["a"].ToString();//由winform中传给网页的参数用a标识
string B = Request.Form["b"].ToString();
int C = Convert.ToInt32(A) + Convert.ToInt32(B);
Response.Write(C.ToString());//将数据写到网页中
在winform中实现传参的例子代码如下:
private void button1_Click(object sender, EventArgs e)
{
WebClient w = new WebClient();
System.Collections.Specialized.NameValueCollection VarPost = new System.Collections.Specialized.NameValueCollection();
VarPost.Add("a", textBox1.Text.Trim());//将textBox1中的数据变为用a标识的参数,并用POST传值方式传给网页
VarPost.Add("b", textBox2.Text.Trim());
//将参数列表VarPost中的所有数据用POST传值的方式传给http://申请好的域名或用IIs配置好的地址/Default.aspx,
//并将从网页上返回的数据以字节流存放到byRemoteInfo中)(注:IIS配置的时候经常没配置好会提示错误,嘿)
byte[] byRemoteInfo = w.UploadValues("http://申请好的域名或用IIs配置好的地址/Default.aspx",
"POST", VarPost);
string sRemoteInfo = System.Text.Encoding.UTF8.GetString(byRemoteInfo);
label1.Text = sRemoteInfo;
}
这样就实现了C# Winform利用POST传值方式模拟表单提交数据,在这仅供大家参考
相关文章推荐
- C#关于日期 月 天数 和一年有多少周及根据某年某周获取时间段的计算(转)
- C#中的异常及解决办法记录
- C#获取目录的几种方法
- 第一章、C#委托和事件(Delegate、Event、EventHandler、EventArgs)
- C#调用DLL报“试图加载格式不正确的程序”
- C#中字符串的内存分配与驻留池
- C# 多线程 方法,类的标记
- C# Winform实现炫酷的透明动画界面
- c#数据类型转换
- C#《猜猜看》游戏开发总结
- [转载] 张子阳 --- C# 中的委托和事件
- THE ELEMENTS OF C# STYLE
- C#对文件进行加密解密代码
- C#程序设计开发总结(猜猜看游戏开发)
- C#以排列组合中的“组合”方式遍历某个文件夹下的所有文件
- C# windows服务:通过cmd命令安装、卸载、启动和停止Windows Service(InstallUtil.exe)
- C#读写txt文件的两种方法介绍
- c#读取dbf文件并输出某一列
- c#猜猜看
- c# 图片转二进制/字符串 二进制/字符串反转成图片