У нас есть ASP.NET MVC с 4-5 различными конфигурациями сборки. Всякий раз, когда мы меняем конфигурацию сборки, нам нужно удалить папку obj для веб-проекта, так как мы получаем ошибку allowDefinition = MachineToApplication. Боль, но нам удалось удалить папку в событиях pre/post build. Теперь мне нужно настроить наш CI для создания пакетов развертывания. Это означает, что я не могу удалить папку obj. Каждый раз, когда я компилирую, например, со следующими параметрами msbuild
/p: CreatePackageOnPublish = true/p: DeployOnBuild = true
Получаю ошибку:
web.config(123): ошибка ASPCONFIG: Ошибка использования раздела, зарегистрированного как allowDefinition = 'MachineToApplication', превышающего уровень приложения. Эта ошибка может быть вызвана тем, что виртуальный каталог не настроен как приложение в IIS.
Насколько я понимаю, проблема в том, что в проекте есть несколько файлов .config. В нашем случае нет. Я действительно мог бы использовать некоторую помощь, чтобы найти объяснение и найти постоянное (no-hack) исправление.
Изменить: Этот вопрос отмечен как дубликат, но соответствующие ответы и причины (причины) в 2 потоках явно отличаются друг от друга. Не уверен, что предназначено для этого тега. Я прочитал этот конкретный пост, прежде чем публиковать этот вопрос, так как он не ответил на мой вопрос. Существует несколько причин для этого сообщения об ошибке. Это "похоже", но определенно не дубликат!