Для чего нужна папка "Temporary ASP.NET Files"?

Я обнаружил эту папку в C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files и есть несколько вопросов.

  • Для чего ASP.NET использует эту папку и какие файлы хранятся здесь?
  • Как файл хранится здесь и когда он обновляется?
  • Папка нуждается в каком-либо обслуживании?

3 ответа

Решение

Это так называемые папки теневого копирования.

Упрощенно.... и я действительно это имею ввиду

Когда ASP.NET запускает ваше приложение в первый раз, он копирует все сборки, найденные в папке /bin, копирует любые файлы исходного кода (например, в папке App_Code) и анализирует ваши aspx, ascx файлы в исходные файлы C#. Затем ASP.NET собирает / компилирует весь этот код в работающее приложение.

Одним из преимуществ этого является то, что он предотвращает возможность блокировки #. DLL сборки (в папке /bin) рабочим процессом ASP.NET и, следовательно, невозможность его обновления.

ASP.NET отслеживает изменения файлов на вашем веб-сайте и при необходимости начинает весь процесс заново.

Теоретически папка не нуждается в техническом обслуживании, но время от времени, и очень редко вам может понадобиться удалить содержимое. Тем не менее, я работаю в хостинговой компании, мы запускаем до 1200 сайтов на общий сервер, и мне не приходилось трогать эту папку ни на одной из 250 или около того машин в течение многих лет.

Это описано в статье MSDN. Общие сведения о динамической компиляции ASP.NET

CLR использует его при компиляции во время выполнения. Вот ссылка на MSDN, которая объясняет дальше.

Вот где asp.net помещает динамически скомпилированные сборки.

Другие вопросы по тегам