使用POSTMan chrome扩展将列表传递给MVC控制器操作

时间:2013-01-29 07:52:11

标签: asp.net-mvc api

我正在使用Postman Chrome扩展来测试我的MVC服务API。

我传递给控制器​​的模型如下所示:

public class ActivateBenefitRequestModel
{
    public int BenefitID { get; set; }
    public int MemberID { get; set; }
    public string Token { get; set; }
    public List<AdditionalBenefitField> BenefitAdditionalFields { get; set; } 
}

public class AdditionalBenefitField
{
    public int BenefitFieldId { get; set; }
    public string Value { get; set; }
}

我应该如何传递BenefitAdditionalFields列表?

甚至可能吗?

2 个答案:

答案 0 :(得分:1)

假设你所做的只是构建一个POST请求字符串(不熟悉扩展名),我相信你可以格式化你的请求,以指定用URL编码的方括号索引的单个列表元素:

...&AdditionalBenefitFields%5B0%5D.BenefitFieldId=1&AdditionalBenefitFields%5B0%5D.Value=Foo
&AdditionalBenefitFields%5B1%5D.BenefitFieldId=2&AdditionalBenefitFields%5B1%5D.Value=Bar&...

这是我们的一个MVC3项目中复杂类型列表的POST请求的样子,我很确定我们不会对它做任何特殊的事情。

答案 1 :(得分:-2)

所以我明白了,这很简单:

只需在PostMan扩展程序中的表单数据中设置单独的文本值

BenefitAdditionalFields[0].BenefitFieldId
BenefitAdditionalFields[0].Value
BenefitAdditionalFields[1].BenefitFieldId
BenefitAdditionalFields[1].Value