2009-11-29 2 views
3

У меня есть легкий класс, который я использую, чтобы отслеживать, кто пользователь в веб-запросе ASP.NET MVC. Он извлекает словарь из кеша приложения и считывает и изменяет некоторые значения, а в конце каждого метода, к которому осуществляется доступ к кешированному словарю, вставляет словарь обратно в кеш.Будет ли мой метод Dispose вызываться в конце запроса ASP.NET

Я хотел бы просто изменить словарь и вставить его обратно в кеш в конце веб-запроса, реализовав IDisposable. Будет ли ASP.NET вызывать Dispose на каждом объекте, который был создан в ходе запроса, или мне нужно обработать это вручную в событии конечного запроса приложения.

ответ

4

Нет, ASP.NET не будет вызывать метод Dispose в любом экземпляре. Вам нужно будет обработать это либо с помощью инструкции using, либо вручную вызовите Dispose на экземпляр.

+0

Спасибо. Можете ли вы сказать мне, если словарь, извлеченный из кеша, является ссылкой или копией? Потому что, если это ссылка, мне даже не нужно вставлять ее обратно, верно? –

+0

ОК, справочная вещь была глупым вопросом, конечно, это ссылка, и нет необходимости вставлять ее обратно. –