【发布时间】:2015-06-12 20:31:06
【问题描述】:
我有角度服务:
statistics.factory('getData', function ($http) {
return {
result: function (url, date) {
return $http({
method: 'POST',
url: url,
data: {
date: date
}
});
}
};});
此服务发送给 MVC 控制器的日期参数。
我想在 MVC Model Bidned 中查看 data 参数。
我试过了:
public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
var request = controllerContext.HttpContext.Request;
var date = request["date"];
var date1 = request.Form.Get("date");
var date3 = new StreamReader(request.InputStream);
var requestFromPost = date3.ReadToEnd();
}
但我总是得到空值。
这是我的模型绑定器:
public class DataBinder : IModelBinder
{
public object BindModel(ControllerContext controllerContext, ModelBindingContext bindingContext)
{
var request = controllerContext.HttpContext.Request;
var date = request.QueryString["date"];
return date;
}
和行动
[HttpPost]
public ActionResult GetStatisticsData([ModelBinder(typeof(DataBinder))] DataA dataA)
}
【问题讨论】:
-
您可能需要检查查询字符串:
var date = request.QueryString["date"]; -
你能检查“日期”在 ajax 参数中是否未定义吗? -
-
当然,当我有这样的操作时: [HttpPost] public ActionResult GetStatisticsData(string date) } 它工作正常
-
null到底是什么,var request还是获取var date的请求?
标签: asp.net-mvc angularjs