Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/306.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何通过查询字符串获取JSON对象_C#_Asp.net Mvc 4_Get - Fatal编程技术网

C# 如何通过查询字符串获取JSON对象

C# 如何通过查询字符串获取JSON对象,c#,asp.net-mvc-4,get,C#,Asp.net Mvc 4,Get,我必须处理以下查询: 控制器/操作?查询={“操作”:“测试”,“id”:“13037313353”,“pin”:“452312”} 顺便说一句 我的ViewModel: public class ValidatePinViewModel { public ActionType action { get; set; } public int Id { get; set; } public int Pin { get; set; }

我必须处理以下查询: 控制器/操作?查询={“操作”:“测试”,“id”:“13037313353”,“pin”:“452312”} 顺便说一句

我的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());
        }

现在我的视图为空。如何获得正确的模型

由于在这个问题上几乎没有支持性信息,我想试一试,并说您没有发布一个动作。e、 g

[HttpPost] // <-- Make sure you define your POST action
public JsonResult ValidateVisit(CommonViewModel model)
{
   ...
}

[HttpPost]/我可以添加一个字符串来获取对象

比如:

 public JsonResult ValidateVisit(string query)
 {
    ValidatePinViewModel model = Json.Deserialize<ValidatePinViewModel>(query);       
    return Json(new InvalidPin());
 }
公共JsonResult ValidateVisit(字符串查询) { ValidatePinViewModel=Json.Deserialize(查询); 返回Json(new InvalidPin()); }
是的,我正在使用另一种服务,它通过GET发送这种类型的查询。然后另一种服务就错了。如果其他服务正在发布数据,它应该使用POST。我知道。我不能改变它。我只能用它。