Как исправить ошибку IIS" compilerVersion"?


Я получаю это исключение:

6 53

6 ответов:

у меня была аналогичная проблема, и я должен был сказать ASP.NET в конфигурации использовать компилятор 3.5 следующим образом путем изменения Web.config.

Я скопировал и вставил из мой код. Вы должны изменить значение= "v3.5" на значение="v4. 0". Элемент тип компилятора строки также могут измениться.

<configuration>

  <!--  ... other configuraiton stuff ... -->

  <system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider,System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
        <providerOption name="CompilerVersion" value="v3.5"/>
        <providerOption name="WarnAsError" value="false"/>
      </compiler>
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.VisualBasic.VBCodeProvider, System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
        <providerOption name="CompilerVersion" value="v3.5"/>
        <providerOption name="OptionInfer" value="true"/>
        <providerOption name="WarnAsError" value="false"/>
      </compiler>
    </compilers>
  </system.codedom>

</configuration>

в моем случае компилятор 2.0 используется вместо 3.5. Я работал в службах IIS 7 веб-сайт проекта ASP.NET .

Вы можете почерпнуть дополнительная информация от:

это должно помочь

<configuration>
<!--  -->
<system.codedom>
 <compilers>
  <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4"
    type="Microsoft.CSharp.CSharpCodeProvider,System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
   <providerOption name="CompilerVersion" value="v4.0"/>
   <providerOption name="WarnAsError" value="false"/>
  </compiler>
 </compilers>
</system.codedom>
<!--  -->
</configuration>

в моем случае я пытался запустить дочернее приложение с помощью 4.0, но родительское приложение должно было по-прежнему использовать 2.0. Перенос информации о компиляторах в родительский веб-узел.конфигурация с <location path="." inheritInChildApplications="false"> тег исправил.

Родительский Веб-Сайт.config:

<location path="." inheritInChildApplications="false">
  <system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider,System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="4">
        <providerOption name="CompilerVersion" value="v3.5" />
        <providerOption name="WarnAsError" value="false" />
      </compiler>
    </compilers>
  </system.codedom>

удалить этот раздел из интернета.конфигурации

<compilation debug="true" strict="true" explicit="true"  targetFramework="4.0" />

в моем случае это был дочерний сайт под веб-сайтом по умолчанию, и хотя настройки веб-сайта по умолчанию были установлены на ASP.NET 4.0, веб.файл конфигурации был установлен для 2.0 и 3.5. Изменение веб-страницы.конфигурационный файл для использования 4.0 исправлен. Используйте это для справки:ASP.NET 4 критические изменения

мы случайно скопировала Web.конфигурации на C:\inetpub\wwwroot. Это случайно скопированная паутина.config имел несоответствующую конфигурацию и вызвал ошибку компиляции для нас. Удаление веб-страницы.конфиг решил эту проблему за нас.