【问题标题】:How to send an array to ActionResult using HttpWebRequest如何使用 HttpWebRequest 将数组发送到 ActionResult
【发布时间】:2011-07-27 13:10:29
【问题描述】:

我想使用带有 post 方法的 HttpWebRequest 从另一个应用程序向 ActionResult 发送一个字符串数组:

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://localhost:12345/ReceiveData");
request.ContentType = "application/x-www-form-urlencoded";
request.Method = "POST";
string data = "tags=data1&tags=data2&tags=data3";
byte[] dataBytes = Encoding.UTF8.GetBytes(data);
request.ContentLength = dataBytes.Length;
Stream reqStream = request.GetRequestStream();
reqStream.Write(dataBytes, 0, dataBytes.Length);
reqStream.Close();
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Encoding encoding = System.Text.Encoding.GetEncoding(1252);
StreamReader responseStream = new StreamReader(response.GetResponseStream(), encoding);
string stringResponse = responseStream.ReadToEnd();
responseStream.Close();
response.Close();

ActionResult 方法:

[AcceptVerbs(HttpVerbs.Post)]
public ActionResult ReceiveData(string[] tags)
{
    return Json(tags);
}

我收到的数据参数只有一个包含“data1,data2,data3”的字符串。 我必须如何发送数据才能以正确的形式接收数组参数??? 我可以使用 split 在 action 方法中生成数组,但我更喜欢以正确的形式接收数据。

【问题讨论】:

    标签: asp.net-mvc post httpwebrequest parameter-passing


    【解决方案1】:

    尝试使用,

    tags[]=data1&tags[]=data2&tags[]=data3
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-06-30
      • 1970-01-01
      • 2016-10-09
      • 2013-01-26
      • 2014-04-12
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多