1.普通Controller
在asp.net mvc项目中,我们自定义的controller都继承自System.Web.Mvc.Controller。
对于post请求,排查了几种获取参数的方式,发现这种controller并不支持从body中读取json串进行转换成参数。故最后选择使用FormCollection来获取参数。
//需要前端以application/x-www-form-urlencoded格式传输参数
public ActionResult Test(FormCollection param)
{
string test = param["test"];
return test;
}
2.ApiController
在asp.net mvc中我们可以选择创建Webapi项目。其自定义的controller都继承自System.Web.Http.ApiController。
这种controller对于json格式的请求进行了支持,可以读取到body中的json串并解析成参数,注意这里需要json串与自定以的model对上。
//前端选择使用application/json
public TestModel Post(TestModel testModel)
{
return testModel;
}