.NET-Projekt-Designer (C#)

Verwenden Sie project Designer , um die Einstellungen und Eigenschaften des Projekts für .NET Core und .NET 5+ anzugeben. For .NET Framework and Visual Basic projects, see What is the .NET Project Designer?.

Um auf den Project Designer zuzugreifen, wählen Sie in Projektmappen-Explorer einen Projektknoten (nicht den Projektmappenknoten) aus. Wählen Sie dann in der Menüleiste Projekt>Eigenschaften aus. Der Projekt-Designer wird angezeigt.

Hinweis

Auf Ihrem Computer werden möglicherweise andere Namen oder Speicherorte für die Benutzeroberflächenelemente von Visual Studio angezeigt als die in diesem Artikel. Möglicherweise verwenden Sie eine andere Edition von Visual Studio oder andere Umgebungseinstellungen. Weitere Informationen finden Sie unter Personalisieren der IDE.

Anwendungs-, Allgemeine Einstellungen

Mit den folgenden Optionen können Sie allgemeine Einstellungen für die Anwendung konfigurieren.

Ausgabetyp

Gibt den Typ der zu erstellenden Anwendung an. Die Werte unterscheiden sich je nach Projekttyp. Für ein Konsolenanwendungsprojekt können Sie zum Beispiel Windows-Anwendung, Konsolenanwendung oder Klassenbibliothek als Ausgabetyp angeben.

Weitere Informationen über die Eigenschaft Ausgabetyp finden Sie unter /target (C#-Compileroptionen).

Informationen zum programmgesteuerten Zugreifen auf diese Eigenschaft finden Sie unter OutputType.

Zielframework

Gibt die .NET-Version an, auf die die Anwendung ausgerichtet ist. Diese Option kann unterschiedliche Werte aufweisen, je nachdem, welche Versionen von .NET auf Ihrem Computer installiert sind.

Für ein Projekt, das auf .NET Core oder .NET 5+ ausgerichtet ist, werden die verfügbaren Versionen möglicherweise wie folgt angezeigt:

Screenshot der Versionen der Ziel-Framework für ein .NET-Core-Projekt in Visual Studio 2022.

Hinweis

Bei ClickOnce-Anwendungen werden die im Dialogfeld "Voraussetzungen" aufgeführten Erforderlichen Pakete automatisch festgelegt, wenn Sie das Dialogfeld zum ersten Mal öffnen. Wenn im Nachhinein Änderungen am Zielframework des Projekts vorgenommen werden, müssen Sie die erforderlichen Komponenten entsprechend dem neuen Zielframework manuell auswählen.

Weitere Informationen finden Sie unter Übersicht über Frameworkziele.

Zielbetriebssystem

Gibt das Betriebssystem an, auf das das Projekt ausgerichtet wird. In Kombination mit dem Zielframework generiert dies eine .NET 5+ OS-spezifische TF.

Startobjekt

Definiert den Einstiegspunkt, der aufgerufen werden soll, wenn die Anwendung geladen wird. Dieser wird üblicherweise entweder auf das Hauptformular der Anwendung oder auf die Main-Prozedur festgelegt, die beim Start der Anwendung ausgeführt werden soll. Da Klassenbibliotheken über keinen Einstiegspunkt verfügen, ist ihre einzige Option für diese Eigenschaft (Nicht festgelegt).

In einem WPF-App-Projekt ist diese Option standardmäßig festgelegt auf (Nicht festgelegt). Die andere Option ist [projectname].App. Bei einem WPF-Projekt müssen Sie den Start-URI so einstellen, dass beim Starten der Anwendung eine UI-Ressource geladen wird. Öffnen Sie hierfür im Projekt die Datei Application.xaml, und legen Sie die StartupUri-Eigenschaft auf eine XAML-Datei in Ihrem Projekt fest, beispielsweise Window1.xaml. Eine Liste der zulässigen Stammelemente finden Sie unter StartupUri. In einer Klasse im Projekt müssen Sie auch eine public static void Main()-Methode definieren. Diese Klasse wird in der Startobjekt-Liste als ProjectName.ClassName angezeigt. Sie können dann die Klasse als Startobjekt auswählen.

Weitere Informationen hierzu finden Sie unter /main (C#-Compileroptionen). Informationen zum programmgesteuerten Zugriff auf diese Eigenschaft finden Sie unter StartupObject.

Assemblyname

Gibt den Namen der Ausgabedatei an, in der das Assemblymanifest enthalten ist. Durch Ändern dieser Eigenschaft wird auch die Eigenschaft Ausgabename geändert.

Sie können diese Änderung auch mithilfe von /out (C#-Compileroptionen) in der Befehlszeile vornehmen.

Informationen zum programmgesteuerten Zugriff auf diese Eigenschaft finden Sie unter AssemblyName.

Standardnamespace

Legt den Basisnamespace für alle Dateien fest, die dem Projekt hinzugefügt werden.

Weitere Informationen zum Erstellen von Namespaces im Code finden Sie unter Namespace.

Informationen zum programmgesteuerten Zugriff auf diese Eigenschaft finden Sie unter RootNamespace.

Anwendungs-, Win32-Ressourceneinstellungen

Symbol:

Legt die ICO-Datei fest, die als Programmsymbol verwendet werden soll. Klicken Sie auf Durchsuchen, um eine vorhandene Grafik zu suchen, oder geben Sie den Namen der gewünschten Datei ein. Weitere Informationen finden Sie unter /win32icon (C#-Compileroptionen).

Informationen zum programmgesteuerten Zugriff auf diese Eigenschaft finden Sie unter ApplicationIcon.

Weitere Informationen zum Erstellen eines Symbols finden Sie unter Bildbearbeitung für Symbole.

Ressourcen

Mithilfe der Option "Ressourcen " können Sie Ressourceneinstellungen für Ihre App konfigurieren. Standardmäßig sind die Optionen "Symbol" und "Manifest" aktiviert. Dadurch können Sie Ihr eigenes Symbol oder andere Optionen zur Generierung von Manifesten auswählen. Lassen Sie dieses Optionsfeld ausgewählt, es sei denn, Sie stellen eine Ressourcendatei für das Projekt bereit.

Wenn Sie "Ressource" auswählen, konfigurieren Sie eine Ressourcendatei für das Projekt. Geben Sie einen Pfadnamen ein, oder verwenden Sie die Schaltfläche "Durchsuchen ", um dem Projekt eine Win32-Ressourcendatei hinzuzufügen. Weitere Informationen finden Sie unter Erstellen von Ressourcendateien für .NET-Apps.

Manifest

Aktiviert eine Option zur Manifestgenerierung, wenn die Anwendung auf Windows Vista unter der Benutzerkontensteuerung (UAC) ausgeführt wird. Für diese Option können die folgenden Werte verwendet werden:

  • Manifest mit Standardeinstellungen einbetten. Unterstützt das normale Verhalten von Visual Studio unter Windows Vista, bei dem durch Einbetten der Sicherheitsinformationen in die ausführbare Datei der Anwendung angegeben wird, dass requestedExecutionLevel auf AsInvoker festgelegt werden soll. Dies ist die Standardoption.

  • Anwendung ohne Manifest erstellen. Diese Methode wird auch als Virtualisierung bezeichnet. Verwenden Sie diese Option, wenn Kompatibilität mit früheren Anwendungen erforderlich ist.

  • Verwenden Sie ein benutzerdefiniertes Manifest. Ermöglicht es Ihnen, einen Pfad einzugeben oder zu einem benutzerdefinierten Manifest für das Projekt zu navigieren.

Globale Usings-Einstellungen

Implizite globale Verwendungen

Aktiviert oder deaktiviert globale Verwendungen, mit denen Sie Typen verwenden können, die in einem Namespace definiert sind, ohne den vollqualifizierten Namespace anzugeben.

Verwalten impliziter globaler Verwendungen

Manuelles Hinzufügen und Löschen globaler Verwendungen für die Verwendung in Ihren Projekten.

Build, Allgemeine Einstellungen

Symbole für bedingte Kompilierung

Gibt Symbole an, für die eine bedingte Kompilierung durchgeführt werden soll. Trennen Sie Symbole mit einem Semikolon („;“). Weitere Informationen finden Sie unter /define (C# Compiler Options).

Debuggen benutzerdefinierter Symbole

Gibt Symbole für die bedingte Kompilierung für Debugbuilds an. Die Standardmäßigen Debugsymbole werden in einer Zeichenfolge angezeigt, getrennt durch Semikolons.

Freigeben von benutzerdefinierten Symbolen

Gibt Symbole für die bedingte Kompilierung für Releasebuilds an. Die Standardmäßigen Freigabesymbole werden in einer Zeichenfolge angezeigt, die durch Semikolons getrennt ist.

Zielplattform

Gibt den Prozessor an, für den die Ausgabedatei konfiguriert ist. Wählen Sie für jeden Intel-kompatiblen 32-Bit-Prozessor x86, für jeden Intel-kompatiblen 64-Bit-Prozessor x64 und für ARM-Prozessoren ARM aus, oder wählen Sie Any CPU, um anzugeben, dass jeder Prozessor zulässig ist. Any CPU (Beliebige CPU) ist der Standardwert für Projekte, da die Anwendung hiermit auf möglichst vielen Geräten ausgeführt werden kann.

Weitere Informationen finden Sie unter /platform (C# Compiler Options).

NULL zulassen

Gibt projektübergreifend den C#-Nullable-Kontext an. Diese UI-Option wurde in Visual Studio 16.5 eingeführt und ist nur in Projekten verfügbar, die C# 8.0 oder höher verwenden.

Weitere Informationen finden Sie unter Nullwerte zulassende Verweistypen – Nullable-Kontexte.

Generieren von Assemblyinformationen

Gibt an, ob paketbezogene Projekteigenschaften in Assemblyattribute umgewandelt werden. Weitere Informationen finden Sie in der GenerateAssemblyInfo-Eigenschaft .

Unsicherer Code

Ermöglicht das Kompilieren von Code, der das unsafe-Schlüsselwort verwendet. Weitere Informationen finden Sie unter /unsafe (C# Compiler Options.

Code optimieren

Aktiviert oder deaktiviert die vom Compiler durchgeführten Optimierungen, damit Ihre Ausgabedatei kleiner, schneller und effizienter wird. Weitere Informationen finden Sie unter /optimize (C# Compiler Options).

Debugsymbole

Gibt den Typ der Debuginformationen an, die vom Compiler generiert werden. Informationen zum Konfigurieren der Debugleistung einer Anwendung finden Sie unter DebugType-Compileroption . Diese Einstellung hat folgende Optionen:

  • keine

    Gibt an, das keine Debuginformationen generiert werden

  • full

    Ermöglicht es, einen Debugger an ein ausgeführtes Programm anzufügen.

  • pdbonly

    Macht ein Debuggen von Quellcode möglich, wenn das Programm im Debugger gestartet wird. Der Assembler wird jedoch nur angezeigt, wenn das aktive Programm an den Debugger angefügt ist.

  • portable (portabel)

    Erzeugt eine PDB-Datei, d.h. eine nicht plattformspezifische Symboldatei, die anderen Tools, besonders Debuggern, Informationen über die Erstellung und den Inhalt der wichtigsten ausführbaren Datei bereitstellt. Weitere Informationen finden Sie unter Portable PDB.

  • embedded (eingebettet)

    Portable Symbolinformationen werden in der Assembly eingebettet. Es wird keine externe PDB-Datei generiert.

Weitere Informationen finden Sie unter /debug (C# Compiler Options).

Build-, Fehler- und Warnungseinstellungen

Die folgenden Einstellungen werden verwendet, um Optionen zu Fehlern und Warnungen für den Buildvorgang zu konfigurieren.

Warnstufe

Gibt die anzuzeigende Stufe für Compiler-Warnungen an. Weitere Informationen finden Sie unter /warn (C# Compiler Options).

Unterdrücken bestimmter Warnungen

Blockiert die Fähigkeit des Compilers, eine oder mehrere spezifische Warnungen zu generieren. Trennen Sie mehrere Warnungsnummern jeweils durch ein Komma oder Semikolon voneinander. Weitere Informationen finden Sie unter /nowarn (C# Compiler Options).

Warnungen als Fehler behandeln

Wählen Sie aus, ob Warnungen während des Buildvorgangs als Fehler behandelt werden. Weitere Informationen finden Sie unter /warnaserror (C# Compiler Options).

Bestimmte Warnungen als Fehler behandeln

Geben Sie an, welche Warnungen als Fehler behandelt werden. Trennen Sie mehrere Warnungsnummern jeweils durch ein Komma oder Semikolon voneinander.

Tipp

Wenn keine Warnungen der Codeanalyse als Fehler behandelt werden sollen, sehen Sie sich die Häufig gestellten Fragen zur Codeanalyse an.

Build-, Ausgabeeinstellungen

Die folgenden Einstellungen werden verwendet, um die Ausgabeoptionen für den Buildvorgang zu konfigurieren.

Basisausgabepfad

Legt den Speicherort der Ausgabedateien für die Konfiguration des Projekts fest. Geben Sie den Pfad der Buildausgabe in dieses Feld ein, oder wählen Sie die Schaltfläche Durchsuchen, um einen Pfad anzugeben. Der Pfad ist relativ. Wenn Sie einen absoluten Pfad eingeben, wird dieser als relativer Pfad gespeichert. Der Standardpfad lautet bin\Debug\ oder bin\Release\.

Mit vereinfachten Buildkonfigurationen bestimmt das Projektsystem, ob eine Debug- oder eine Releaseversion erstellt werden soll. Mit dem Befehl Erstellen im Menü Debuggen (F5) wird der Build unabhängig vom angegebenen Ausgabepfad am Debugspeicherort abgelegt. Mit dem Befehl Erstellen im Menü Erstellen hingegen wird er an dem Speicherort abgelegt, den Sie angeben. Weitere Informationen finden Sie unter Grundlagen der Buildkonfiguration.

Referenzassembly

Gibt an, ob eine Referenzassembly generiert werden soll , die die öffentliche API des Projekts enthält.

Dokumentationsdatei

Gibt den Namen der Datei an, in der die Dokumentationskommentare verarbeitet werden. Weitere Informationen finden Sie unter /doc (C# Compiler Options).

Build- und Ereigniseinstellungen

Informationen zu den Buildereigniseinstellungen finden Sie unter Angeben von Buildereignissen (C#).

Build-, Veröffentlichungseinstellungen

Veröffentlichung

Ermöglicht die Ausführung des MSBuild-Veröffentlichungsziels. Weitere Informationen finden Sie in der MSBuild IsPublishable-Eigenschaft .

Gekürzte Veröffentlichung

Gibt an, ob die Kürzung während des Veröffentlichungsprozesses aktiviert ist. Weitere Informationen finden Sie unter Trim-bezogene Eigenschaften.

Veröffentlichen nativer AOT

Gibt an, ob eine eigenständige App erstellt werden soll und die vorab (AOT) in systemeigenem Code kompiliert wurde. Weitere Informationen finden Sie unter Bereitstellung von nativem AOT.

Erstellen, Starke Benennungseinstellungen

Die Baugruppe signieren

Setzen Sie ein Häkchen in diesem Kontrollkästchen, um die Assembly zu signieren und eine Schlüsseldatei mit starkem Namen zu erstellen. Weitere Informationen zum Signieren von Assemblys mithilfe von Projekt-Designer finden Sie unter Vorgehensweise: Signieren von Assemblys (Visual Studio). Weitere Informationen finden Sie unter Assemblys mit starken Namen.

Diese Option verwendet das Tool „AI.exe“, das vom Windows Software Development Kit (SDK) zum Signieren der Assembly bereitgestellt wird. Weitere Informationen zu diesem Tool erhalten Sie im Artikel Vorgehensweise: Signieren einer Assembly mit einem starken Namen.

Schlüsseldateiliste mit starkem Namen

Gibt Ihnen die Möglichkeit, eine neue oder bereits vorhandene Schlüsseldatei mit starkem Namen festzulegen, die verwendet wird, um die Assembly zu signieren. Wählen Sie <Durchsuchen...> aus, um eine vorhandene Schlüsseldatei auszuwählen.

Nur Verzögerungszeichen

Setzen Sie ein Häkchen in diesem Kontrollkästchen, um die verzögerte Signierung zu aktivieren. Weitere Informationen finden Sie unter Verzögertes Signieren einer Assembly.

Bitte beachten Sie, dass ein verzögert signiertes Projekt nicht ausgeführt wird und auch nicht debuggt werden kann. Allerdings können Sie das Sn.exe (Strong Name Tool) mit der Option -Vr verwenden, um das Überprüfen während der Entwicklung zu überspringen.

Hinweis

Beim Signieren einer Assembly haben Sie möglicherweise nicht immer Zugriff auf einen privaten Schlüssel. Eine Organisation kann z.B. ein streng geheim gehaltenes Schlüsselpaar verwenden, auf das Entwickler nicht täglich zugreifen können. Möglicherweise steht der öffentliche Schlüssel zur Verfügung, während der Zugriff auf den privaten Schlüssel nur einigen Wenigen erlaubt ist. In einem solchen Fall können Sie die verzögerte oder Teilsignierung verwenden, um den öffentlichen Schlüssel bereitzustellen. Dadurch wird das Hinzufügen des privaten Schlüssels solange verzögert, bis die Assembly übergeben wird.

Erstellen, Erweiterte Einstellungen

Mit den folgenden Optionen können Sie erweiterte Buildeinstellungen festlegen.

Sprachversion

Link zu /langversion (C#-Compileroptionen). Dort finden Sie Informationen, wie eine Standardsprachversion basierend auf dem Zielframework eines Projekts ausgewählt wird.

Prüfung auf arithmetischen Überlauf

Gibt an, ob ein arithmetischer Ganzzahlauszug, der sich außerhalb des Bereichs der geprüften oder ungeprüften Schlüsselwörter befindet und der einen Wert außerhalb des Bereichs des Datentyps nach sich zieht, eine Ausnahme verursacht. Weitere Informationen finden Sie unter /checked (C# Compiler Options).

Deterministisch

Gibt an, ob byte-for-byte-äquivalente Ausgabe aus derselben Eingabequelle erzeugt werden soll. Weitere Informationen finden Sie unter C#-Compileroptionen, die die Codegenerierung steuern.

Bericht für interne Compilerfehler

Gibt an, ob Compilerfehler an Microsoft gemeldet werden sollen. Wenn prompt (Standardeinstellung) eingestellt ist, erhalten Sie eine Aufforderung, wenn ein interner Compilerfehler auftritt, die Ihnen die Option gibt, einen elektronischen Fehlerbericht an Microsoft zu senden. Wenn send eingestellt ist, werden Fehlerberichte automatisch gesendet. Wenn queue eingestellt ist, werden Fehlerberichte in eine Warteschlange gestellt. Wenn none eingestellt ist, wird der Fehler nur in der Eingabe des Compilertexts gemeldet. Weitere Informationen finden Sie unter /errorreport (C# Compiler Options).

Dateianordnung

Gibt die Größe der Abschnitte in der Ausgabedatei an. Gültige Werte sind 512, 1024, 2048, 4096 und 8192. Diese Werte werden in Bytes angegeben. Jeder Abschnitt wird auf einer Grenze angeordnet, die ein Mehrfaches des Werts ist, wodurch die Größe der Ausgabedatei beeinflusst wird. Weitere Informationen finden Sie unter /filealign (C# Compiler Options).

Paket, allgemeine Einstellungen

Die Eigenschaften in diesem Abschnitt werden verwendet, um Pakete zu konfigurieren, die im Allgemeinen eigenschaften in einer NuGet-NUSpec-Datei entsprechen. Weitere Informationen finden Sie in der NUSPEC-Datei.

Paket- und Lizenzeinstellungen

Paketlizenz

Gibt an, ob ein Lizenzausdruck oder eine Lizenzdatei in Ihr Paket eingeschlossen werden soll. Weitere Informationen finden Sie im Lizenzelement .

Paket-, Symboleinstellungen

Ein Symbolpaket erstellen

Gibt an, ob ein Symbolpaket für das Debuggen erstellt werden soll. Weitere Informationen finden Sie unter Erstellen von Symbolpaketen (.snupkg).For more information, see Creating symbol packages (.snupkg).

Codeanalyse, Alle Analyseeinstellungen

Auf Build ausführen

Gibt an, ob beim Erstellen des Projekts Quellcodeanalyse ausgeführt werden soll. Weitere Informationen finden Sie unter Deaktivieren der Quellcodeanalyse für .NET.

Liveanalyse ausführen

Gibt an, ob beim Erstellen des Projekts Live-Quellcodeanalyse ausgeführt werden soll. Weitere Informationen finden Sie unter Deaktivieren der Quellcodeanalyse für .NET.

Codeanalyse, .NET Analyzer-Einstellungen

Erzwingen von Codestilregeln beim Buildvorgang

Gibt an, ob verletzungen der .NET-Codeformatvorlage beim Erstellen des Projekts gemeldet werden. Weitere Informationen finden Sie unter Erzwingen von Codeformatvorlagen beim Build.

Aktivieren von .NET-Analyzern

Aktiviert oder deaktiviert die .NET-Compilerplattform (Roslyn) Analyzer. Weitere Informationen finden Sie unter Aktivieren oder Installieren von .NET-Analyzern von Erstanbietern.

Analyseebene

Gibt die Gruppe von Analysegeräten an, die im Projekt ausgeführt werden sollen. Weitere Informationen finden Sie im Abschnitt "Neueste Updates " im Übersichtsartikel zur Codeanalyse.

Debuggen, allgemeine Einstellungen

Wählen Sie den Link aus, um die Ui für Debugstartprofile zu öffnen. Mit dieser Benutzeroberfläche können Sie beim Debuggen unterschiedliche Profile hinzufügen und konfigurieren. Jeder Profilname wird als Startoption in der Liste "Debuggen starten" angezeigt.

Für ASP.NET Core-Projekte entsprechen die Einstellungen in der Ui der Startprofile den Einstellungen in der Startdatei des Projekts Einstellungen.json. Ausführliche Informationen zur Verwendung dieser Datei in ASP.NET Entwicklung finden Sie unter Entwicklung und Start Einstellungen.json.

Ressourcen, allgemeine Einstellungen

Wählen Sie den Link aus, um die RESX-Assemblyressourcendatei zu öffnen. Weitere Informationen finden Sie auf der Seite Einstellungen Project Designer.

Weitere Informationen

Überarbeitete Benutzeroberfläche Projekt-Eigenschaften