Megosztás a következőn keresztül:


Oktatóanyag: .NET-osztálytár létrehozása a Visual Studióval

Ebben az oktatóanyagban egy egyszerű osztálykönyvtárat hoz létre, amely egyetlen szövegkezelési módszert tartalmaz.

A osztálykódtár definiálja az alkalmazás által meghívott típusokat és metódusokat. Ha a kódtár a .NET Standard 2.0-t célozza meg, azt bármely .NET-implementáció meghívhatja (beleértve a .NET-keretrendszert is), amely támogatja a .NET Standard 2.0-t. Ha a kódtár a .NET 8-at célozza, azt bármely olyan alkalmazás meghívhatja, amely a .NET 8-at célozza. Ez az oktatóanyag bemutatja, hogyan célozhatja meg a .NET 8-at.

Osztálykódtár létrehozásakor nuGet-csomagként vagy az azt használó alkalmazáshoz csomagolt összetevőként terjesztheti.

Előfeltételek

Megoldás létrehozása

Első lépésként hozzon létre egy üres megoldást az osztálytár projektjének elhelyezéséhez. A Visual Studio-megoldások tárolóként szolgálnak egy vagy több projekthez. Ugyanahhoz a megoldáshoz további, kapcsolódó projekteket fog hozzáadni.

Az üres megoldás létrehozása:

  1. Indítsa el a Visual Studiót.

  2. A kezdési ablakban válassza az Új projekt létrehozásalehetőséget.

  3. A Új projekt létrehozása lapon írja be megoldás a keresőmezőbe. Válassza az Üres megoldás sablont, majd válassza a Továbblehetőséget.

    Üres megoldássablon a Visual Studio

  4. Az Új projekt konfigurálása lapon írja be ClassLibraryProjects a Megoldás neve mezőbe. Ezután válassza létrehozása lehetőséget.

Osztálytárprojekt létrehozása

  1. Adjon hozzá egy "StringLibrary" nevű új .NET-osztálytárprojektet a megoldáshoz.

    1. Kattintson a jobb gombbal a megoldásra Megoldáskezelő, és válassza a Hozzáadás>Új projektlehetőséget.

    2. A Új projekt hozzáadása lapon írja be könyvtár a keresőmezőbe. Válassza C# vagy Visual Basic a Nyelv listából, majd válassza a Minden platform lehetőséget a platformlistában. Válassza az Osztálykönyvtár sablont, majd válassza a Továbblehetőséget.

    3. Az Új projekt konfigurálása lapon írja be StringLibrary a Projekt neve mezőbe, majd válassza a Továbblehetőséget.

    4. A További információk lapon válassza a .NET 8-t, majd kattintson a Létrehozásgombra.

  2. Ellenőrizze, hogy a kódtár a .NET megfelelő verzióját célozza-e meg. Kattintson a jobb gombbal a kódtárprojektre Megoldáskezelő, majd válassza a Tulajdonságoklehetőséget. A Target Framework szövegmező azt mutatja, hogy a projekt a .NET 8.0-t célozza.

  3. Ha Visual Basicet használ, törölje a szöveget a Gyökérnévtér szövegmezőből.

    projekttulajdonságok az osztálykönyvtár

    A Visual Basic minden projekthez automatikusan létrehoz egy, a projekt nevének megfelelő névteret. Ebben az oktatóanyagban egy legfelső szintű névteret határoz meg a kódfájl namespace kulcsszójának használatával.

  4. Cserélje le a Class1.cs vagy Class1.vb kódablakában lévő kódot a következő kódra, és mentse a fájlt. Ha a használni kívánt nyelv nem jelenik meg, módosítsa a nyelvválasztót a lap tetején.

    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);
            }
        }
    }
    
    Imports System.Runtime.CompilerServices
    
    Namespace UtilityLibraries
        Public Module StringLibrary
            <Extension>
            Public Function StartsWithUpper(str As String) As Boolean
                If String.IsNullOrWhiteSpace(str) Then
                    Return False
                End If
    
                Dim ch As Char = str(0)
                Return Char.IsUpper(ch)
            End Function
        End Module
    End Namespace
    

    A UtilityLibraries.StringLibraryosztálykódtár egy StartsWithUppernevű metódust tartalmaz. Ez a metódus egy Boolean értéket ad vissza, amely jelzi, hogy az aktuális sztringpéldány nagybetűvel kezdődik-e. A Unicode szabvány megkülönbözteti a nagybetűket a kisbetűktől. A Char.IsUpper(Char) metódus true ad vissza, ha egy karakter nagybetűs.

    StartsWithUpper mint bővítménymetódus került megvalósításra, így meg hívhatja, mintha az a String osztályhoz tartozna. A C#-kódban string utáni kérdőjel (?) azt jelzi, hogy a sztring null értékű lehet.

  5. A menüsávon válassza a Build>Build Solution lehetőséget, vagy nyomja le Ctrl+Shift+B billentyűkombinációt a projekt hiba nélküli fordításának ellenőrzéséhez.

Konzolalkalmazás hozzáadása a megoldáshoz

Adjon hozzá egy olyan konzolalkalmazást, amely az osztálytárat használja. Az alkalmazás megkéri a felhasználót, hogy írjon be egy sztringet, és jelentse, hogy a sztring nagybetűvel kezdődik-e.

  1. Adjon hozzá egy "ShowCase" nevű új .NET-konzolalkalmazást a megoldáshoz.

    1. Kattintson a jobb gombbal a megoldásra Megoldáskezelő, és válassza a >Új projekt hozzáadásalehetőséget.

    2. Az Új projekt hozzáadása lapon írja be a konzolt a keresőmezőbe. Válassza C# vagy Visual Basic a Nyelv listából, majd válassza a Minden platform lehetőséget a platformlistában.

    3. Válassza a konzolalkalmazás sablont, majd válassza a Továbblehetőséget.

    4. Az Új projekt konfigurálása oldalon írja be a Projekt neve mezőbe, hogy ShowCase. Ezután válassza a Következőlehetőséget.

    5. A További információk lapon válassza .NET 8 a Keretrendszer mezőben. Ezután válassza létrehozása lehetőséget.

  2. A Program.cs vagy Program.vb fájl kódablakában cserélje le az összes kódot a következő kódra.

    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")}{Environment.NewLine}");
                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($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}");
                row = 3;
            }
        }
    }
    
    Imports UtilityLibraries
    
    Module Program
        Dim row As Integer = 0
    
        Sub Main()
            Do
                If row = 0 OrElse row >= 25 Then ResetConsole()
    
                Dim input As String = Console.ReadLine()
                If String.IsNullOrEmpty(input) Then Return
    
                Console.WriteLine($"Input: {input} {"Begins with uppercase? ",30}: " +
                                  $"{If(input.StartsWithUpper(), "Yes", "No")} {Environment.NewLine}")
                row += 3
            Loop While True
        End Sub
    
        Private Sub ResetConsole()
            If row > 0 Then
                Console.WriteLine("Press any key to continue...")
                Console.ReadKey()
            End If   
            Console.Clear()
            Console.WriteLine($"{Environment.NewLine}Press <Enter> only to exit; otherwise, enter a string and press <Enter>:{Environment.NewLine}")
            row = 3  
        End Sub
    End Module
    

    A kód a row változót használja a konzolablakba írt adatsorok számának fenntartásához. Ha 25-nél nagyobb vagy egyenlő, a kód törli a konzolablakot, és üzenetet jelenít meg a felhasználónak.

    A program kéri a felhasználót, hogy adjon meg egy karakterláncot. Azt jelzi, hogy a karakterlánc nagybetűvel kezdődik-e. Ha a felhasználó sztring beírása nélkül lenyomja az Enter billentyűt, az alkalmazás véget ér, és bezárul a konzolablak.

Projekthivatkozás hozzáadása

Az új konzolalkalmazás-projekt kezdetben nem rendelkezik hozzáféréssel az osztálytárhoz. Ha engedélyezni szeretné, hogy metódusokat hívjon meg az osztálytárban, hozzon létre egy projekthivatkozást az osztálytár projektre.

  1. A Megoldáskezelőbenkattintson a jobb gombbal a ShowCase projekt Függőségek csomópontjára, és válassza a Projekthivatkozás hozzáadásalehetőséget.

    Referencia hozzáadása a helyi menüben a Visual Studioban

  2. A Reference Manager párbeszédpanelen jelölje ki a StringLibrary projektet, és válassza OKlehetőséget.

    Reference Manager párbeszédpanel, amelyen a StringLibrary ki van jelölve

Az alkalmazás futtatása

  1. A Megoldáskezelőterületen kattintson a jobb gombbal a ShowCase projektre, és válassza a helyi menüben a Beállítás kezdőprojektként lehetőséget.

    Visual Studio projekt helyi menüjének beállítása indítási projekthez

  2. A program hibakeresés nélküli fordításához és futtatásához nyomja le a Ctrl+F5 billentyűkombinációt.

  3. Próbálja ki a programot karakterek beírásával és a Enterbillentyű megnyomásával, majd a kilépéshez nyomja meg a Enter billentyűt.

    konzol-ablak, amelyen a ShowCase fut

További erőforrások

Következő lépések

Ebben az oktatóanyagban létrehozottál egy osztálykönyvtárat. A következő oktatóanyagban megtanulhatja, hogyan tesztelheti az osztálytárat.

Vagy kihagyhatja az automatizált egységtesztelést, és megtanulhatja, hogyan oszthatja meg a kódtárat Egy NuGet-csomag létrehozásával:

Vagy megtudhatja, hogyan tehet közzé konzolalkalmazást. Ha az oktatóanyagban létrehozott megoldásból teszi közzé a konzolalkalmazást, az osztálytár .dll fájlként használja.