HttpWebRequest 模拟jquery ajax请求,该如何解决

HttpWebRequest 模拟jquery ajax请求
有一个asxh处理页面,用于接收jquery ajax发送来的请求。
请求方式为post,数据格式json。
在处理页面里面用context.Request.Form["key"]接收请求参数。

现在不修改asxh文件,需要使用HttpWebRequest发送数据返回结果,请求代码如下:

HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
request.Method = "POST";
string dataStr = "{\"loginName\":\"abc\",\"password\":\"123\"}";
byte[] data = Encoding.ASCII.GetBytes(dataStr);
Stream stream = request.GetRequestStream();
stream.Write(data, 0, data.Length);
stream.Close();


这种方式发送的数据,在asxh只能用context.request.InputStream来接收,Request.Form里面没有东西。
如何修改请求方式,能在ashx用Form接收数据?或者用其他什么方式?
PS:ashx还要被其他地方调用,不能修改。只能修改HttpWebRequest请求那一块。
------解决方案--------------------
改成下面的试试的
string dataStr = "key={\"loginName\":\"abc\",\"password\":\"123\"}";

主要还是ashx里面取到context.Request.Form["key"]如何去处理这个值的,然后照着反着做一下的
------解决方案--------------------
你这样发的request只有头,没有体
追加上体就行了,应该是一个html
------解决方案--------------------
ashx里面取到context.Request.Form["key"]如何去处理这个值的
------解决方案--------------------
谁告诉你写 string dataStr = "{\"loginName\":\"abc\",\"password\":\"123\"}"; 呢?你应该先学会调试 http 消息文本。