C#中 winForm 与 webForm 通讯的问题
如何在一个winForm和一个webForm中进行数据传输交换?C#网络编程高手请进用socket?基于哪个协议?cra2yd0g,你说的在WEBFORM中留一个接口,可...
如何在一个winForm和一个webForm中进行数据传输交换?
C#网络编程高手请进
用socket?基于哪个协议?
cra2yd0g , 你说的在WEBFORM中留一个接口,可不可以给个简短的例子。(我想实现的是远程客房端的WINFORM与服务器WEBFORM之间的数据交换)
lcg1986 ,你说UDP也可以?不过我在网上看的资料是说UDP只能实现局域网内的通讯
我只有服务器是固定的IP 展开
C#网络编程高手请进
用socket?基于哪个协议?
cra2yd0g , 你说的在WEBFORM中留一个接口,可不可以给个简短的例子。(我想实现的是远程客房端的WINFORM与服务器WEBFORM之间的数据交换)
lcg1986 ,你说UDP也可以?不过我在网上看的资料是说UDP只能实现局域网内的通讯
我只有服务器是固定的IP 展开
展开全部
webcontrol的DOM控制它,就像javascript控制的DOM一样
像比如obj = document.getElementByName(name)之类的方法 web控件是有的
如果winform 和 webform不在同一个项目中,就 webform留接口出来,用winform,webform程序间传值,这样简单得多,就可以不用socket,而且不用自己去分析HTTP协议
刚看过一个人在FROM中使用网页,错理解了WEBFORM,你说的就是WEB吧?
最好使用WCF,WCF要定义契约,地址,绑定的,给个例子代码太多,几句话也说不清
如果你不会的话用WebClient
下面别人的例子:
// 要提交表单的URI字符串。
string url= http://www.xxx.com/Guest.asp;
// 要提交的字符串数据。
string postString = "userName=test&Title=test&Content=test";
// 初始化WebClient
WebClient webClient = new WebClient();
webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
// 将字符串转换成字节数组
byte[] postData = Encoding.ASCII.GetBytes(postString);
// ASP.NET 返回的页面一般是Unicode,如果是简体中文应使用
// Encoding.GetEncoding("GB2312").GetBytes(postString)
// 上传数据,返回页面的字节数组
byte[] responseData = webClient.UploadData(uriString, "POST", postData);
// ASP.NET 返回的页面一般是Unicode,如果是简体中文应使用
// Encoding.GetEncoding("GB2312").GetString(responseData)
// 返回的将字节数组转换成字符串(HTML)看自己的WEB用的什么编码
string srcString = Encoding.UTF8.GetString(responseData);
像比如obj = document.getElementByName(name)之类的方法 web控件是有的
如果winform 和 webform不在同一个项目中,就 webform留接口出来,用winform,webform程序间传值,这样简单得多,就可以不用socket,而且不用自己去分析HTTP协议
刚看过一个人在FROM中使用网页,错理解了WEBFORM,你说的就是WEB吧?
最好使用WCF,WCF要定义契约,地址,绑定的,给个例子代码太多,几句话也说不清
如果你不会的话用WebClient
下面别人的例子:
// 要提交表单的URI字符串。
string url= http://www.xxx.com/Guest.asp;
// 要提交的字符串数据。
string postString = "userName=test&Title=test&Content=test";
// 初始化WebClient
WebClient webClient = new WebClient();
webClient.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
// 将字符串转换成字节数组
byte[] postData = Encoding.ASCII.GetBytes(postString);
// ASP.NET 返回的页面一般是Unicode,如果是简体中文应使用
// Encoding.GetEncoding("GB2312").GetBytes(postString)
// 上传数据,返回页面的字节数组
byte[] responseData = webClient.UploadData(uriString, "POST", postData);
// ASP.NET 返回的页面一般是Unicode,如果是简体中文应使用
// Encoding.GetEncoding("GB2312").GetString(responseData)
// 返回的将字节数组转换成字符串(HTML)看自己的WEB用的什么编码
string srcString = Encoding.UTF8.GetString(responseData);
展开全部
用Socket啊!
补充:
协议没有关系啊.TCP/UDP都可以实现2者通讯.刚开始学的话,用TCP吧.
你看看QQ用的什么协议吧!使用的是UDP协议.怎么可能只能在LAN内用呢?如果你想实现WAN的通讯,那么你要去看看NAT,除非你2台机器都用公网IP.不过一般的NAT好象都是用UDP实现的.
补充一下,NAT是指网络地址转换,是实现2台都处于内网情况下,没有公网IP的计算机通讯的一种技术
补充:
协议没有关系啊.TCP/UDP都可以实现2者通讯.刚开始学的话,用TCP吧.
你看看QQ用的什么协议吧!使用的是UDP协议.怎么可能只能在LAN内用呢?如果你想实现WAN的通讯,那么你要去看看NAT,除非你2台机器都用公网IP.不过一般的NAT好象都是用UDP实现的.
补充一下,NAT是指网络地址转换,是实现2台都处于内网情况下,没有公网IP的计算机通讯的一种技术
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询