Как очистить контекст объекта - PullRequest
4 голосов
/ 30 сентября 2010

Если я выполнил несколько запросов и ObjectContext был заполнен сущностями, как мне очистить контекст, если мне больше не нужны эти сущности. Я знаю, что мне нужно избавиться от контекста как можно скорее, но в этом случае это невозможно. Так есть ли способ, которым я могу удалить эти объекты из контекста?

Ответы [ 3 ]

11 голосов
/ 30 сентября 2010

Нет метода для "очистки" ObjectContext.Единственный способ сделать это - удалить текущий экземпляр ObjectContext и запустить новый экземпляр.

1 голос
/ 30 сентября 2010

Вы можете попробовать Отсоединить каждую сущность в контексте.

0 голосов
/ 18 марта 2015

Вы можете попытаться отсоединить каждую сущность в контексте.

Макс прав, но когда вы хотите делать что-то, что занимает много времени, контекст сохраняет много объектов и продолжает расти в памяти, что замедляет работу вашего приложения.

Это вызов по утечке памяти.

У меня сейчас есть проблема с EntityFramework 6, но я не знаю, как «точно» это исправить.

Всегда, когда мне нужно сделать запрос, я поднимаю контекст и делаю это, но это действие отличается, у меня есть много вещей, чтобы вычислить в цикле, и я держу контекст до конца. Пока я уничтожаю свой список после сброса, но в моей системе все еще есть утечка памяти, и контекст наверняка имеет эту проблему. Кто-нибудь предлагает "команду"? Я не знаю, как работает структура сущности.

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