На самом деле, первые два ответа неверны. возможно и достаточно просто , чтобы предотвратить эту переработку, и эта функция была доступна, по крайней мере, с IIS6.
Метод 1 (для всей системы)
Измените параметр реестра DWORD
для HKLM\SOFTWARE\Wow6432Node\Microsoft\ASP.NET\FCNMode
на значение 1
, что отключит все уведомления об изменении файла.
Не смущайтесь местоположением: Wow6432Node
в этом случае не влияет на разрядность вашего веб-приложения.
Метод 2 (.NET 4.5 +)
Если вы используете .NET 4.5, тогда теперь можно отключить это на уровне сайта , просто используйте следующее в web.config
:
<httpRuntime fcnMode="Disabled"/>
Метод 3 (IIS6 +)
Наконец, а также (по крайней мере), начиная с IIS6, есть параметр, называемый DisallowRotationOnConfigChange
, как параметр только для пула приложений (по крайней мере, я думаю, что текст в MSDN пытается это сделать) говорят, но я не проверял это). Установите для него значение true
, и изменения в конфигурации пула приложений не приведут к немедленной перезагрузке.
Этот последний параметр также можно установить в разделе «Дополнительные параметры» пула приложений:
Метод 4 (ASP.NET 1.0 и 1.1)
Для (старых) веб-сайтов, использующих ASP.NET 1.0 или 1.1, существует подтвержденная ошибка , которая может вызывать быстрые и повторные повторы при изменении файла. Обходной путь в то время был похож на то, что MartinHN предложил по основному вопросу, а именно что-то вроде следующего в вашем web.config
:
<compilation
debug="false"
defaultLanguage="vb"
numRecompilesBeforeAppRestart="5000">
Это не отключает утилизацию, но делает это только после выполнения 5000 перекомпиляций. Полезность этого числа зависит от размера вашего приложения. Microsoft не совсем ясно, что такое перекомпиляция на самом деле. Однако по умолчанию установлено значение 15 .
В качестве отступления: независимо от версии .NET или Windows, мы обнаруживаем, что когда приложение запускается из общего ресурса и используется в среде с балансировкой нагрузки, сайт постоянно перезагружается. Единственный способ решить эту проблему - добавить эту настройку FNCMode
в реестр (но теперь есть более детальные опции).