使用Android中的Volley将多个参数传递给.Net WebApi控制器

时间:2017-11-22 05:31:30

标签: c# android asp.net-web-api

我在Controller中有一个WebAPI方法,如下所示

[ResponseType(typeof(Part))]
 public IHttpActionResult PostPart(Part part, string yearsIDList)
{

}

其中PartDTO类`和' yearsIDList'是简单的字符串。

我想使用AndroidVolley调用此方法,如下所示

JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.POST, url,new JSONObject(params), this,this
            ) {
                @Override
                public Map<String, String> getHeaders() throws AuthFailureError {
                   // stub code, I removed it for security reasons before posting on SO
                }
            };

params包含Part的所有数据。我想知道如何通过POST的{​​{1}}方法传递多个参数。我也希望通过android

1 个答案:

答案 0 :(得分:0)

原来是接受Paramters,您可以使用JsonObject创建parameters,并且需要按照

传递
            Map<String, String> params = new HashMap<>();
            try {
                JSONObject part= new JSONObject(params);
                params.put("part",part.toString());
                params.put("yearsIDList","value");
            } catch (JSONException e) {
                e.printStackTrace();
            }
            JSONObject parameters = new JSONObject(params);     
            JsonObjectRequest jsonObjReq = new JsonObjectRequest(Request.Method.POST, url,parameters, this,this
            ) {
               @Override
               public Map<String, String> getHeaders() throws AuthFailureError {
                 // stub code, I removed it for security reasons before posting on SO
              }
            };