日期:2014-05-17  浏览次数:20438 次

C#进行Post提交时,&连接符导致数据丢失问题
通过C#进行pos方式数据提交时,发现数据总是提交不全。后来发现问题如下:


reqesut.ContentType = "application/x-www-form-urlencoded";(待提交页面接收数据方式就是这个。)
String  data="title="+Name+"&content="+Content;(提交数据)


其中标题为正常文本(通过text的value获得),而content是编辑器生成的,即是一段html代码,即然是html代码,必然包括类似于 之类的空格问题,所以问题即出现了,因为当系统碰到第一个&时,会将其后面的数据当做另一个键、值对,因此,从这个&之后的数据将全部丢失。但html代码中不可能不存在&符号,该怎么办呢,试着用html编码,发现,"&"编码后,得到的结果仍然含有"&"。然在找不到好的办法。


将各位大侠帮忙解决,看看怎么处理?

------解决方案--------------------
既然是要编码成url的参数自然要用HttpServerUtility.UrlEncode()
而不是HtmlEncode