2

我有以下控制器来获取四个参数和一个获取字符串数组。

public Response Get(string a, double b, double c, string[] d)
{
   do something
} 

如您所见,第四个(d)参数是一个字符串数组。前 3 个参数获取值,但 d 显示为空。

我正在使用提琴手通过以下网址进行调试

04/api/Controller?a=Hello&b=-37.8031231&c=144.9836514&d=Italian&d=bars

我做错了什么?是网址吗?

4

2 回答 2

1

在没有看到您的视图的情况下,我可以抽象出您将 2 个输入命名为 name='d' 而无需索引

例子:

您可以通过使用数组索引命名您的 id 输入来创建数组。

@using (Html.BeginForm())
{
    <input type="text" name="d[1]">
    <input type="text" name="d[2]">
}

如果您索引输入,框架会将它们用作列表

注意: 你调出 URL。没有 Post 就不能传递数组或任何复杂对象。

于 2013-02-25T05:54:45.890 回答
1

您可以从提琴手发布数组数据,您提供的 URL 是正确的。但请确保您在请求标头中具有正确的内容类型。

您不必创建视图来测试您的控制器操作方法。

客户要求

在此处输入图像描述

服务器响应

在此处输入图像描述

PS 以上提供的是控制器操作方法,我注意到您在发布答案后正在使用 api 控制器。为 api 控制器完成后,我将编辑答案。

以上也适用于 APIController,如果您是从提琴手发帖

于 2013-02-25T06:57:55.903 回答