Внутренняя ошибка сервера при вызове метода записи ajax - PullRequest
0 голосов
/ 15 мая 2019

У меня проблема с вызовом метода ajax POST, он просто возвращает ошибку с сообщением: Internal Server Error.

Мой скрипт выглядит так:

$('.add-column').click(function () {

    var ids = [];

    $('#table1 > tbody > tr.selected').each(function () {

        var ident = $(this).attr('id');
        ids.push(ident);
    });

    $.ajax({
        url: '/Syzyf/AddUserColumns',
        type: 'POST',
        contentType: "application/json; charset=utf-8",
        data: { id : JSON.stringify(ids) },
        cache: false,
        success: function (result) {

        },
        error: function (xhr, status, error) {
            console.log(error);
        }
    });
});

И метод контроллера:

[HttpPost]
public ActionResult AddUserColumns(List<int> ids)
{ 
    var userId = GetUserId(User.Identity.Name);

    using (var ctx = new SyzyfContext())
    {
        foreach (var id in ids)
        {
            var uc = new UserColumns();
            uc.ColumnId = id;
            uc.UserId = userId;

            ctx.UserColumns.Add(uc);
        }

        ctx.SaveChanges();
    }

    return Json("Success");

}

Я думал, что это может быть проблема с data, но когда я изменил метод для вызова ajax-функции foreach id в ids, он вернул ту же ошибку. Что я делаю не так?

EDIT

Я нашел решение.

Проблема была с таблицей базы данных, у нее не было ПЕРВИЧНОГО КЛЮЧА ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...