TELERIK ASP.NET MVC2 AJAX Ошибка 500 внутренняя ошибка с объектами Framework Framework 4 - PullRequest
0 голосов
/ 13 января 2011

При получении ответа ajax у меня произошла внутренняя ошибка 500.

Вот 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 был распоряжаться и больше не может быть использован для операции, требующие подключения.

Существует "круговая ссылка" между Order и ItemsInOrder. Но если я удаляю «Включить» («Порядок»), я получаю исключение, когда сетка перечисляет объект ItemsInOrder (в поле ссылки «Порядок»).

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

1 Ответ

0 голосов
/ 13 января 2011

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

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

...