Was genau macht <system.codedom> / <compilers> in web.config in MVC 5?

Ich bin im Begriff, eine Reihe von Projekten von .NET 4.0 + MVC 3 auf .NET 4.5.2 + MVC5 zu migrieren.

Um dies zu vereinfachen, habe ich ein neues leeres MVC-Projekt erstellt, um DLL-Referenzen und einige andere Dinge wie web.config zu vergleichen.

In letzterem Fall werden die folgenden Einträge von Visual Studio generiert:

<system.codedom>
    <compilers>
      <compiler language="c#;cs;csharp" extension=".cs"
        type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        warningLevel="4" compilerOptions="/langversion:6 /nowarn:1659;1699;1701"/>
      <compiler language="vb;vbs;visualbasic;vbscript" extension=".vb"
        type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"
        warningLevel="4" compilerOptions="/langversion:14 /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+"/>
    </compilers>
</system.codedom>

Aber ich weiß nicht genau was das macht. Die MVC 3-Projekte enthalten diese Teile nicht. Meines Wissens hat es etwas mit Roslyn zu tun?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage