繁体   English   中英

我如何从C#(MVC)中的发布网址获取NameValuePair数据

[英]How can i get NameValuePair data from post url in c#(MVC)

我通过添加NameValuePair从android设备发送HttpPost请求,但未获取如何在Controller中获取NameValuePair值。

这是发送请求的代码:-

HttpPost request=new HttpPost(PostUrl);
HttpResponse response;
List<NameValuePair> nameValuePairs=new ArrayList<NameValuePair>(7);
    nameValuePairs.add(new BasicNameValuePair("userName",userName));
    nameValuePairs.add(new BasicNameValuePair("password",Password));
    nameValuePairs.add(new BasicNameValuePair("deviceId",deviceId));
    nameValuePairs.add(new BasicNameValuePair("subdomain",Subdomain));
    nameValuePairs.add(new BasicNameValuePair("deviceType",DeviceType));
    nameValuePairs.add(new BasicNameValuePair("uniqueId",UniqueId));
    nameValuePairs.add(new BasicNameValuePair("appVersion",AppVersion));
    request.setEntity(new UrlEncodedFormEntity(nameValuePairs,"UTF-8"));
    response = client.execute(request);

这是我发送的NameValuePair ..

现在,这是我发布这些数据的帐户控制器和方法登录名的代码(C#)。

public LoginResponse login( NameValueCollection post, String UserName, String password, String deviceId, String subdomain, String deviceType,String uniqueId,String appVersion)
{
String User=Convert.toString(post["userName"]);


}

请告诉我如何使用此方法获取NameValuePair。如果我通过附加到Post Url发送所有参数,则其工作正常,但是如果我通过NameValuePair发送,则User的值始终为null

尝试这个:

public LoginResponse login(NameValueCollection post)
{
    string test1 = post.Get("userName");
    string test2 = post.Get("password");
}

另外,如果这是MVC,请选择一个标准结果(在这种情况下,ContentResult返回一个字符串):

public ContentResult login(NameValueCollection post)
{
    LoginResponse loginResponse = //some method call...

    return Content("login", loginResponse)
}

让我知道它是否有效。 如果没有,我还有其他建议给您。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM