когда очистить или сделать null asp.net моделями mvc? - PullRequest
0 голосов
/ 19 марта 2010

Я работаю в приложении asp .net mvc. Я использую модель и сохраняю некоторые значения, которые мне нужно сохранить между постами страницы, в виде данных.

Скажем, моя модель выглядит примерно так:

public SelectedUser SelectedUserDetails
{
    //get and set has 
    //this.datacontext.data.SelectedUser = .....
    //return this.datacontext.data.....
}

Теперь, когда эту модель нужно очистить? У меня есть много таких моделей со многими свойствами и данными. Но я понятия не имею, когда его очистить. Есть ли способ или событие, которое может быть вызвано автоматически, если модель не используется в течение длительного времени?

Однажды я подумал, что когда я ухожу со страницы, использующей мою базовую модель, я могу очистить эту модель, если она больше нигде не используется, и инициализировать ее обратно по мере необходимости. Но мне нужно очистить почти много моделей во многих точках. Существует ли автоматический способ очистки моделей, когда они больше не используются, потому что мой код может позаботиться об их инициализации, когда они мне нужны, но я не знаю, когда их очищать, когда они мне больше не нужны. Мне нужно это, чтобы избавиться от любых проблем, связанных с памятью. Есть мысли или комментарии?

1 Ответ

0 голосов
/ 19 марта 2010

Я бы использовал кеш ASP.NET или сессию для хранения данных между запросами. Тайм-аут кэша может быть установлен на объекте, и он будет автоматически удален - обратите внимание, что вам понадобится способ восстановить его, если он будет удален до того, как вы его закончили. Если вы используете сеанс, объекты будут удалены по истечении времени сеанса. Вы также можете - по умолчанию - удалить его (или заменить его), когда вы нажмете действие, которое запустит последовательность действий, для которой оно необходимо.

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