App_Browsers игнорируется после каждой перестройки

У меня есть эта проблема, которая затрагивала меня некоторое время:

Я использую CSSFriendly с папкой App_Browsers и файлом CSSFriendlyAdapters.browser.

Все работает нормально, но каждый раз, когда я изменяю исходный файл в проекте и перестраиваю, папка App_browsers начинает игнорироваться при запуске веб-приложения.

Чтобы исправить это, я должен не забыть коснуться CSSFriendlyAdapters.browser (я обычно вставляю или удаляю пустую строку) перед сборкой. Если я не смогу сделать это, та же проблема.

Я везде искал решение. Веб-приложение настроено для компиляции с.net 4.0, у меня нет ни файла App_Browsers.dll, ни файла __browserCapabilitiesCompiler.compiled в папке bin.

Я попытался очистить все временные папки, но проблема возвращается каждый раз.

Я собирался написать командный файл, который касается файла CSSFriendlyAdapters.browser как операция перед сборкой, но я решил, что кто-то здесь может помочь.

Обновление:
Решено написание командного файла. Сначала это сработало, но спустя несколько месяцев одного этого недостаточно, мне приходится перезагружать IIS после каждой компиляции.

(Я также заметил, что файлы App_Browsers.dll и __browserCapabilitiesCompiler.compiled* действительно генерируются, но они копируются в временный каталог asp.net вместо папки bin).

1 ответ

Я знаю, что это поздний ответ, но в последние дни у меня были очень трудные времена с этим вопросом. Единственное, что мне помогло, - это удалить предварительно скомпилированный файл возможностей браузера из GAC, используя aspnet_regbrowsers.exe -u команда находится в C:\Windows\Microsoft.NET\Framework\v4.0.30319. Только после того, как я сделал это, файлы определения.browser в папке app_browsers моего сайта были правильно распознаны. Я установил исправление, предоставленное Microsoft для этой проблемы, и оно не помогло. И я хочу прояснить, что копирование файлов нового браузера в C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\Browsers для выполнения обновления на всей машине и запуска aspnet_regbrowsers команда привела к ошибке ("Невозможно найти элемент браузера или шлюза с идентификатором" IE ""). Таким образом, удаление того, что уже есть в GAC, по-видимому, заставило мой сайт использовать собственные файлы определений браузера, и после этого все работало должным образом. Я действительно не знаю, есть ли какие-либо негативные последствия этого подхода, но пока все хорошо.

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