Получение этой ошибки:
Значение для 'compilerVersion' атрибут в опциях поставщика должен be 'v4.0' или более поздней, если вы компиляция для версии 4.0 или новее .NET Framework. Чтобы скомпилировать это Веб-приложение для версии 3.5 или ранее .NET Framework, удалите атрибут 'targetFramework' из элемент Файл Web.config.
Он работал над нашей системой dev, и теперь мы развертываем QA, используя развертывание типа xcopy.
У нас нет "compilerVersion" в любом месте в файле web.config, а для targetFramework установлено значение "4.0". Мы сделали IISReset.
<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
</assemblies>
</compilation>
ОБНОВЛЕНИЕ 2: когда мы удалили весь раздел, мы прошли мимо ошибки. Итак, мой вопрос: что не так с выходом в этом разделе, если мы находимся на .NET 4.0?
Мы просто сделали полный xcopy именно то, что было в Test to QA, а в QA он получил ошибку, а DEV - нет. Таким образом, программное обеспечение и конфиги идентичны. Зачем это работать на одном сервере, а не на другом? Параметры IIS кажутся одинаковыми.