为什么这个 ajax post 请求在 mvc 应用程序中不起作用

Why this ajax post request does not work in mvc app

我有带有 ajax 请求的 js 文件

这是其文本的一部分

$.ajax({
       url: '/Points/Addpoint', // также '@Url.Action("Addpoint", "PointsController")'
       type: "POST",
       dataType: "json",
       data: JSON.stringify({ firstx: ev._x, firsty: ev._y, secondx: ev._x, secondy: ev._y }),
       success: function () {
                               alert();
                           }
});  

我也有带有此方法的 mvc 控制器,应该在 ajax

中调用
[HttpPost]
        public void Addpoint(JSON po)
        {
            var pointslist = this.Getpoints();
            var obj = po;
            pointslist.Add(new Point());

        }

但不知何故这不起作用。 idk 为什么?它给了我 500 个错误和消息

There are no parameterless constructors defined for this object.

我应该怎么做才能解决这个问题并发送这个 json 对象?

将 JSON 更改为 class 并更改您的 post

        public class YourClass 
        {
            public string firstx { get; set; }
            public string firsty { get; set; }
            public string secondx { get; set; }
            public string secondy { get; set; }
        }
        [HttpPost]
        public void Addpoint([FromBody] YourClass po)
        {
            var pointslist = this.Getpoints();
            var obj = po;
            pointslist.Add(new Point());
        }
    $.ajax({
           url: '/Points/Addpoint',
           type: "POST",
            contentType: "application/json; charset=utf-8",
            dataType: "json",
           data: JSON.stringify({ firstx: ev._x, firsty: ev._y, secondx:ev._x,secondy: ev._y }),
           success: function () {

                               }
        });