Nic*_*ick 3 c# asp.net-mvc controller
我试图将一些数据发布到ASP.NET MVC控制器操作.目前我正在尝试使用WebClient.UploadData()将几个参数发布到我的操作中.
以下命令将执行操作,但所有参数均为null.如何从http请求中获取发布的数据?
string postFormat = "hwid={0}&label={1}&interchange={2}localization={3}";
var hwid = interchangeDocument.DocumentKey.Hwid;
var interchange = HttpUtility.UrlEncode(sw.ToString());
var label = ConfigurationManager.AppSettings["PreviewLabel"];
var localization = interchangeDocument.DocumentKey.Localization.ToString();
string postData = string.Format(postFormat, hwid, interchange, label, localization);
using(WebClient client = new WebClient())
{
client.Encoding = Encoding.UTF8;
client.Credentials = CredentialCache.DefaultNetworkCredentials;
byte[] postArray = Encoding.ASCII.GetBytes(postData);
client.Headers.Add("Content-Type", "pplication/x-www-form-urlencoded");
byte[] reponseArray = client.UploadData("http://localhost:6355/SymptomTopics/BuildPreview",postArray);
var result = Encoding.ASCII.GetString(reponseArray);
return result;
}
Run Code Online (Sandbox Code Playgroud)
这是我打电话的行动
public ActionResult BuildPreview(string hwid,string label,string interchange,string localization){...}
达到此Action时,所有参数均为null.
我尝试使用WebClient.UploadValue()并将数据作为NameValueCollection传递.这个方法总是返回500的状态,因为我从MVC应用程序中发出这个http请求,我找不到一种方法来愚弄这个.
任何帮助解决这个问题都会非常有帮助.
-缺口
我更正了标题:
client.Headers.Add("Content-Type", "application/x-www-form-urlencoded");
Run Code Online (Sandbox Code Playgroud)
现在,UploadData只是错误,服务器错误500.
| 归档时间: |
|
| 查看次数: |
8259 次 |
| 最近记录: |