Tutorial: Erstellen einer .NET-Standard-Bibliothek in Visual Studio für MacTutorial: Create a .NET Standard library using Visual Studio for Mac

In diesem Tutorial erstellen Sie eine einfache Klassenbibliothek, die eine einzelne Methode zur Behandlung von Zeichenfolgen enthält.In this tutorial, you create a class library that contains a single string-handling method. Sie implementieren sie als Erweiterungsmethode, damit sie aufgerufen werden kann, als wäre sie ein Mitglied der String-Klasse.You implement it as an extension method so that you can call it as if it were a member of the String class.

Eine Klassenbibliothek definiert die Typen und Methoden, die von einer Anwendung aufgerufen werden können.A class library defines types and methods that are called by an application. Eine Klassenbibliothek, die auf .NET Standard 2.1 abzielt, kann von einer Anwendung genutzt werden, die auf jede .NET-Implementierung abzielt, die Version 2.1 von .NET Standard unterstützt.A class library that targets .NET Standard 2.1 can be used by an application that targets any .NET implementation that supports version 2.1 of .NET Standard. Wenn Sie Ihre Klassenbibliothek fertig gestellt haben, können Sie sie als Komponente eines Drittanbieters oder als gebündelte Komponente mit einer oder mehreren Anwendungen verteilen.When you finish your class library, you can distribute it as a third-party component or as a bundled component with one or more applications.

Hinweis

Ihr Feedback ist uns sehr wichtig.Your feedback is highly valued. Es gibt zwei Möglichkeiten, wie Sie Feedback für das Entwicklungsteam von Visual Studio für Mac bereitstellen können:There are two ways you can provide feedback to the development team on Visual Studio for Mac:

  • Klicken Sie in Visual Studio für Mac auf Hilfe > Ein Problem melden im Menü oder auf Ein Problem melden auf der Willkommensseite. Dadurch wird ein Fenster für das Einreichen eines Fehlerberichts geöffnet.In Visual Studio for Mac, select Help > Report a Problem from the menu or Report a Problem from the Welcome screen, which opens a window for filing a bug report. Sie können Ihr Feedback im Portal der Entwicklercommunity verfolgen.You can track your feedback in the Developer Community portal.
  • Um einen Vorschlag zu machen, wählen Sie Hilfe > Vorschlag senden im Menü oder Vorschlag senden auf der Willkommensseite aus. Dadurch gelangen Sie zur Webseite Visual Studio für Mac-Entwicklercommunity.To make a suggestion, select Help > Provide a Suggestion from the menu or Provide a Suggestion from the Welcome screen, which takes you to the Visual Studio for Mac Developer Community webpage.

VoraussetzungenPrerequisites

Erstellen einer Projektmappe mit einem KlassenbibliotheksprojektCreate a solution with a class library project

Eine Visual Studio-Projektmappe dient als ein Container für mindestens ein Projekt.A Visual Studio solution serves as a container for one or more projects. Erstellen Sie eine Projektmappe und darin ein Klassenbibliotheksprojekt.Create a solution and a class library project in the solution. Sie fügen später der gleichen Projektmappe weitere verwandte Projekte hinzu.You'll add additional, related projects to the same solution later.

  1. Starten Sie Visual Studio für Mac.Start Visual Studio for Mac.

  2. Wählen Sie im Startfenster Neues Projekt aus.In the start window, select New Project.

  3. Wählen Sie im Dialogfeld Neues Projekt unter dem Knoten Multi-Plattform erst Bibliothek und dann die Vorlage .NET Standard-Bibliothek aus. Wählen Sie dann Weiter aus.In the New Project dialog under the Multi-Platform node, select Library, then select the .NET Standard Library template, and select Next.

    Dialogfeld Neues Projekt

  4. Wählen Sie im Dialogfeld Neue .NET Standard-Bibliothek konfigurieren die Option „.NET Standard 2.1“ und dann Weiter aus.In the Configure your new .NET Standard Library dialog, choose ".NET Standard 2.1", and select Next.

    Wählen Sie .NET Standard 2.1

  5. Nennen Sie die Projektmappe „StringLibrary“ und die Projektmappe „ClassLibraryProjects“.Name the project "StringLibrary" and the solution "ClassLibraryProjects". Lassen Sie Projektverzeichnis im Projektmappenverzeichnis erstellen aktiviert.Leave Create a project directory within the solution directory selected. Wählen Sie Erstellen aus.Select Create.

    Visual Studio für Mac, Optionen im Dialogfeld „Neues Projekt“

  6. Wählen Sie im Hauptmenü Ansicht > Pads > Projektmappe und dann das Andocksymbol aus, um das Pad geöffnet zu halten.From the main menu, select View > Pads > Solution, and select the dock icon to keep the pad open.

    Andocksymbol für Pad „Projektmappe“

  7. Erweitern Sie im Pad Projektmappe den StringLibrary-Knoten, um die von der Vorlage bereitgestellte Klassendatei Class1.cs anzuzeigen.In the Solution pad, expand the StringLibrary node to reveal the class file provided by the template, Class1.cs. Klicken Sie bei gedrückter CTRL-TASTE auf die Datei. Wählen Sie im Kontextmenü Umbenennen aus, und benennen Sie die Datei in StringLibrary.cs um.ctrl-click the file, select Rename from the context menu, and rename the file to StringLibrary.cs. Öffnen Sie die Datei und ersetzen Sie den Inhalt durch den folgenden Code:Open the file and replace the contents with the following code:

    using System;
    
    namespace UtilityLibraries
    {
        public static class StringLibrary
        {
            public static bool StartsWithUpper(this String str)
            {
                if (String.IsNullOrWhiteSpace(str))
                    return false;
    
                Char ch = str[0];
                return Char.IsUpper(ch);
            }
        }
    }
    
  8. Drücken Sie S (BEFEHL+S), um die Datei zu speichern.Press S (command+S) to save the file.

  9. Wählen Sie am unteren Rand des IDE-Fensters Fehler aus, um den Bereich Fehler zu öffnen.Select Errors in the margin at the bottom of the IDE window to open the Errors panel. Wählen Sie die Schaltfläche Buildausgabe aus.Select the Build Output button.

    Unterer Rand der IDE mit Schaltfläche „Fehler“ in Visual Studio für Mac

  10. Klicken Sie im Menü auf Build > Build All (Erstellen > Alle erstellen).Select Build > Build All from the menu.

    Die Projektmappe wird erstellt.The solution builds. Im Bereich „Buildausgabe“ wird angezeigt, dass der Build erfolgreich erstellt wurde.The build output panel shows that the build is successful.

    Visual Studio für Mac, Buildausgabebereich im Bereich „Fehler“ mit Meldung, dass der Build erfolgreich war

Hinzufügen einer Konsolen-App zur ProjektmappeAdd a console app to the solution

Im Folgenden fügen Sie eine Konsolenanwendung hinzu, die die Klassenbibliothek verwendet.Add a console application that uses the class library. Die App fordert den Benutzer dazu auf, eine Zeichenfolge einzugeben, und meldet, ob die Zeichenfolge mit einem Großbuchstaben beginnt.The app will prompt the user to enter a string and report whether the string begins with an uppercase character.

  1. Klicken Sie im Pad Projektmappe bei gedrückter CTRL-TASTE auf die Projektmappe ClassLibraryProjects.In the Solution pad, ctrl-click the ClassLibraryProjects solution. Fügen Sie ein neues Konsolenanwendungsprojekt hinzu, indem Sie die Vorlage aus den Vorlagen unter Web und Konsole > App und dann Weiter auswählen.Add a new Console Application project by selecting the template from the Web and Console > App templates, and select Next.

  2. Wählen Sie .NET Core 3.1 als Zielframework und anschließend Weiter aus.Select .NET Core 3.1 as the Target Framework and select Next.

  3. Geben Sie dem Projekt den Namen ShowCase.Name the project ShowCase. Wählen Sie Erstellen aus, um das Projekt in der Projektmappe zu erstellen.Select Create to create the project in the solution.

    Projekt „ShowCase“ hinzufügen

  4. Öffnen Sie die Datei Program.cs.Open the Program.cs file. Ersetzen Sie den Code durch den folgenden Code:Replace the code with the following code:

    using System;
    using UtilityLibraries;
    
    class Program
    {
        static void Main(string[] args)
        {
            int row = 0;
    
            do
            {
                if (row == 0 || row >= 25)
                   ResetConsole();
    
                string input = Console.ReadLine();
                if (String.IsNullOrEmpty(input)) break;
                Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " +
                                  $"{(input.StartsWithUpper() ? "Yes" : "No")}\n");
                row += 3;
            } while (true);
            return;
    
            // Declare a ResetConsole local method
            void ResetConsole()
            {
                if (row > 0) {
                   Console.WriteLine("Press any key to continue...");
                   Console.ReadKey();
                }
                Console.Clear();
                Console.WriteLine("\nPress <Enter> only to exit; otherwise, enter a string and press <Enter>:\n");
                row = 3;
            }
        }
    }
    

    Das Programm selbst fordert den Benutzer zur Eingabe einer Zeichenfolge auf.The program prompts the user to enter a string. Es zeigt an, ob die Zeichenfolge mit einem Großbuchstaben beginnt.It indicates whether the string starts with an uppercase character. Wenn der Benutzer die EINGABETASTE drückt, ohne eine Zeichenfolge einzugeben, wird die Anwendung beendet und das Konsolenfenster geschlossen.If the user presses the enter key without entering a string, the application ends, and the console window closes.

    Der Code verwendet die row-Variable, um die Anzahl der in das Konsolenfenster geschriebenen Datenzeilen festzuhalten.The code uses the row variable to maintain a count of the number of rows of data written to the console window. Wenn sie mindestens 25 beträgt, löscht der Code das Konsolenfenster und zeigt eine Meldung für den Benutzer an.Whenever it's greater than or equal to 25, the code clears the console window and displays a message to the user.

Hinzufügen eines ProjektverweisesAdd a project reference

Anfänglich besitzt das neue Konsolen-App-Projekt keinen Zugriff auf die Klassenbibliothek.Initially, the new console app project doesn't have access to the class library. Damit es Methoden in der Klassenbibliothek aufrufen kann, erstellen Sie einen Projektverweis auf das Klassenbibliotheksprojekt.To allow it to call methods in the class library, create a project reference to the class library project.

  1. Klicken Sie im Pad Projektmappe bei gedrückter CTRL-TASTE im neuen Projekt ShowCase auf den Knoten Abhängigkeiten.In the Solutions pad, ctrl-click the Dependencies node of the new ShowCase project. Wählen Sie im Kontextmenü Verweis hinzufügen aus.In the context menu, select Add Reference.

  2. Wählen Sie im Dialogfeld Verweise das Projekt StringLibrary und dann OK aus.In the References dialog, select StringLibrary and select OK.

Ausführen der AppRun the app

  1. Klicken Sie bei gedrückter CTRL-TASTE auf das Projekt ShowCase, und wählen Sie im Kontextmenü Projekt ausführen aus.ctrl-click on the ShowCase project and select Run project from the context menu.

  2. Testen Sie das Programm, indem Sie Zeichenfolgen eingeben und die EINGABETASTE drücken. Drücken Sie dann die EINGABETASTE, um das Programm zu beenden.Try out the program by entering strings and pressing enter, then press enter to exit.

    Visual Studio für Mac-Konsolenfenster, das Ihre App bei der Ausführung zeigt

Zusätzliche RessourcenAdditional resources

Nächste SchritteNext steps

In diesem Tutorial haben Sie eine Projektmappe und ein Bibliotheksprojekt erstellt sowie ein Konsolen-App-Projekt hinzugefügt, das die Bibliothek verwendet.In this tutorial, you created a solution and a library project, and added a console app project that uses the library. Im nächsten Tutorial fügen Sie der Projektmappe ein Komponententestprojekt hinzu.In the next tutorial, you add a unit test project to the solution.