Для чего нужна папка "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 помещает динамически скомпилированные сборки.