Состояние приложения ASP.NET против статического объекта

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

Вопрос

Если у меня есть стандартное приложение ASP.NET, есть ли какая-то разница между созданием статического объекта по сравнению с переводом экземпляра объекта в состояние приложения?

Насколько я понимаю, оба объекта существуют ОДНАЖДЫ для домена приложения.

Во-вторых, что произойдет, если у вас есть статический объект в ссылочной dll для сайта ASP.NET. Он также является частью домена приложения, поэтому он всегда будет существовать один раз?

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

Решение

От: http://support.microsoft.com/ ? default.aspx SCID = кб, ан-нас; Q312607

  

ASP.NET включает состояние приложения   в первую очередь для совместимости с   классический ASP, чтобы легче было   перенести существующие приложения в   ASP.NET. Рекомендуется, чтобы вы   хранить данные в статических членах   класс приложения, а не в   Объект приложения. Это увеличивает   производительность, потому что вы можете получить доступ к   статическая переменная быстрее, чем вы можете   получить доступ к элементу в приложении   словарь.

Кроме того, да, статические переменные ведут себя одинаково независимо от того, откуда они загружаются, и существуют ровно один раз для домена приложения (если вы не говорите о тех, которые помечены [ThreadStatic])

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