我必须处理以下查询: Controller / Action?query = {“action”:“test”,“id”:“13037313353”,“pin”:“452312”} 通过GET。
我的ViewModel:
public class ValidatePinViewModel
{
public ActionType action { get; set; }
public int Id { get; set; }
public int Pin { get; set; }
}
控制器
public JsonResult ValidateVisit(CommonViewModel model)
{
//model is null
return Json(new InvalidPin());
}
现在我的观点为空。我如何才能获得正确的模型
答案 0 :(得分:1)
由于关于这个问题的支持信息非常少,我将采取行动并说你不是POSTING
采取行动。 e.g。
[HttpPost] // <-- Make sure you define your POST action
public JsonResult ValidateVisit(CommonViewModel model)
{
...
}
GET ,因为您在标签中使用了speficy,不会发布模型。除非您在定义表单元素的位置以及操作本身上明确指出它,否则它将为null。
答案 1 :(得分:1)
我可以添加一个字符串来获取对象。
类似的东西:
public JsonResult ValidateVisit(string query)
{
ValidatePinViewModel model = Json.Deserialize<ValidatePinViewModel>(query);
return Json(new InvalidPin());
}