Options du compilateur C#

Cette section décrit les options interprétées par le compilateur C#. Les options sont regroupées dans des articles distincts en fonction de ce qu’elles contrôlent, par exemple, des fonctionnalités de langage, la génération de code ou la sortie. Utilisez la table des matières pour naviguer parmi celles-ci.

Procédures pour définir des options

Il existe deux façons différentes de définir les options du compilateur dans les projets .NET :

  • Dans votre fichier *.csproj

    Vous pouvez ajouter des propriétés MSBuild pour n’importe quelle option de compilateur dans votre fichier *.csproj au format XML. Le nom de la propriété est identique à l’option du compilateur. La valeur de la propriété définit la valeur de l’option du compilateur. Par exemple, l’extrait de code du fichier projet suivant définit la propriété LangVersion.

    <PropertyGroup>
      <LangVersion>preview</LangVersion>
    </PropertyGroup>
    

    Pour plus d’informations sur la définition d’options dans les fichiers projet, consultez l’article Propriétés MSBuild pour les projets de kit SDK .NET.

  • Utilisation des pages de propriétés Visual Studio

    Visual Studio fournit des pages de propriétés pour modifier les propriétés de build. Pour en savoir plus, consultez Gérer les propriétés du projet et de la solution - Windows ou Gérer les propriétés de projet et de solution – Mac.

Projets .NET Framework

Important

Cette section s’applique uniquement aux projets .NET Framework.

En plus des mécanismes décrits ci-dessus, vous pouvez définir des options de compilateur à l’aide de deux méthodes supplémentaires pour les projets .NET Framework :

  • Arguments de ligne de commande pour les projets .NET Framework : les projets .NET Framework utilisent csc.exe au lieu de dotnet build pour générer des projets. Vous pouvez spécifier des arguments de ligne de commande pour csc.exe pour les projets .NET Framework.
  • Pages ASP.NET compilées : les projets .NET Framework utilisent une section du fichier web.config pour la compilation des pages. Pour le nouveau système de build et les projets ASP.NET Core, les options sont extraites du fichier projet.

Le mot pour certaines options de compilateur est passé des projets csc.exe et .NET Framework au nouveau système MSBuild. La nouvelle syntaxe est utilisée dans cette section. Les deux versions sont répertoriées en haut de chaque page. Pour csc.exe, tous les arguments sont répertoriés après l’option et un signe deux-points. Par exemple, l’option -doc apparaît sous la forme :

-doc:DocFile.xml

Vous pouvez appeler le compilateur C# en tapant le nom de son fichier exécutable (csc.exe) dans une invite de commandes.

Pour les projets .NET Framework, vous pouvez également exécuter csc.exe à partir de la ligne de commande. Chaque option du compilateur est disponible sous deux formes : -option et /option. Dans les projets web .NET Framework, vous spécifiez des options pour compiler du code-behind dans le fichier web.config. Pour plus d’informations, consultez <compilateur> Élément.

Si vous utilisez la fenêtre Invite de commandes développeur pour Visual Studio, toutes les variables d’environnement nécessaires sont définies automatiquement. Pour obtenir des informations sur la façon d’accéder à cet outil, consultez Invite de commandes développeur pour Visual Studio.

Le fichier exécutable csc.exe se trouve généralement dans le dossier Microsoft.NET\Framework\<Version> sous le répertoire Windows. Son emplacement peut varier en fonction de la configuration exacte de l’ordinateur utilisé. Si plusieurs versions du .NET Framework sont installées sur votre ordinateur, vous trouverez plusieurs versions de ce fichier. Pour plus d’informations sur ces installations, consultez Guide pratique pour déterminer les versions installées du .NET Framework.