Telerik ASP.NET MVC2 AJAX ERROR 500 Внутренняя ошибка, с объектами 4 объекта

StackOverflow https://stackoverflow.com/questions/4678062

Вопрос

У меня 500 внутренней ошибки при получении ответа Ajax.

Вот функция AJAX контроллера:

   [GridAction]
    public ActionResult SelectItemGridAjax(int OrderID)
    {
        return View(new GridModel(ordersRepository.GetOrderItemsTK(OrderID).ToList()));
    }

Это то, что отправляет репозиторий:

   public IEnumerable<ItemsInOrder> GetOrderItemsTK(int OrderID)
    {
        using (var context = new techrundb())
        {
           var  result = (from p in context.ItemsInOrders.Include("Order").Where(i=>i.OrderID == OrderID) select p).ToList();
           return result;
        }
    }

Это сервер отвечает:

Экземпляр ObjectContext был утилизирован и больше не может использоваться для операций, которые требуют соединения.

Существует «круговая ссылка» между порядком и элементами. Но если я удалю include («заказ»), я получаю исключение, когда сетка перечисляет объект intempordorder (в полевом поле).

Эта ошибка связана с круглой ссылкой? Что я должен делать ? Создать новый объект и вручную заменить его по дороге в и обратно из сетки?

Это было полезно?

Решение

Я решил эту проблему, создав новый список элементов POCO из списка, возвращенного из базы данных. Я не думаю, что это лучшее решение, и наверняка не эффективное, но это заставило сетку работать.

Надеюсь, что лучшее решение появится.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top