背景
我正在使用 MVC 4 Web API 项目 (ASP.NET) 在 C# 中编写 API 层。
我在我的控制器中编写了一个测试操作,如下所示:
[System.Web.Mvc.HttpPost]
public string TestAction(FormCollection fc)
{
return "test";
}
我在 FireFox 中使用 Poster 来测试表单帖子:
- 内容类型设置为 application/x-www-form-urlencoded
- 参数中的正文设置为 foo=bar&bar=foo
这是我的路线:
RouteTable.Routes.MapHttpRoute("PostDefault", "{controller}/{action}");
问题
从 Poster 发布 url 和参数时,我可以毫无问题地点击控制器,但是如果我放置一个断点return "test";
然后将鼠标悬停在FormCollection
传入的 ( fc
) 上,则表明传入的是一个空的字符串数组而不是我的价值观(例如string[0]
)。
我已经在客户端上使用 jQuery 完成了很多次$.post()
,接收表单集合没有问题。
在这种情况下它失败了什么?
谢谢,
马特