Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W tym samouczku utworzysz prostą bibliotekę klas zawierającą jedną metodę obsługi ciągów tekstowych.
Biblioteka klas definiuje typy i metody wywoływane przez aplikację. Jeśli biblioteka jest przeznaczona dla platformy .NET Standard 2.0, może być wywoływana przez dowolną implementację platformy .NET (w tym .NET Framework), która obsługuje platformę .NET Standard 2.0. Jeśli biblioteka jest przeznaczona dla platformy .NET 8, może być wywoływana przez dowolną aplikację docelową platformy .NET 8. W tym samouczku pokazano, jak celować w .NET 8.
Podczas tworzenia biblioteki klas można ją dystrybuować jako pakiet NuGet lub jako składnik powiązany z aplikacją, która z niej korzysta.
Wymagania wstępne
programu Visual Studio 2022 z zainstalowanym pakietem do tworzenia aplikacji klasycznych .NET . Zestaw .NET 8 SDK jest instalowany automatycznie po wybraniu tego obciążenia.
Aby uzyskać więcej informacji, zobacz Instalowanie zestawu .NET SDK za pomocą programu Visual Studio.
Tworzenie rozwiązania
Zacznij od utworzenia pustego rozwiązania, aby umieścić projekt biblioteki klas. Rozwiązanie programu Visual Studio służy jako kontener dla co najmniej jednego projektu. Dodasz powiązane projekty do tego samego rozwiązania.
Aby utworzyć puste rozwiązanie:
Uruchom program Visual Studio.
W oknie uruchamiania wybierz pozycję Utwórz nowy projekt.
Na stronie Tworzenie nowego projektu wprowadź rozwiązanie w polu wyszukiwania. Wybierz szablon Puste rozwiązanie , a następnie wybierz pozycję Dalej.
Na stronie Konfigurowanie nowego projektu wprowadź ClassLibraryProjects w polu Nazwa rozwiązania . Następnie wybierz pozycję Utwórz.
Tworzenie projektu biblioteki klas
Dodaj nowy projekt biblioteki klas platformy .NET o nazwie "StringLibrary" do rozwiązania.
Kliknij prawym przyciskiem myszy rozwiązanie w Eksploratorze rozwiązań i wybierz polecenie Dodaj>nowy projekt.
Na stronie Dodawanie nowego projektu wprowadź bibliotekę w polu wyszukiwania. Wybierz pozycję C# lub Visual Basic z listy Język, a następnie z listy Platforma wybierz pozycję Wszystkie platformy . Wybierz szablon Biblioteka klas , a następnie wybierz przycisk Dalej.
Na stronie Konfigurowanie nowego projektu wprowadź StringLibrary w polu Nazwa projektu, a następnie wybierz pozycję Dalej.
Na stronie Dodatkowe informacje wybierz pozycję .NET 8, a następnie wybierz pozycję Utwórz.
Upewnij się, że biblioteka jest przeznaczona dla poprawnej wersji platformy .NET. Kliknij prawym przyciskiem myszy projekt biblioteki w Eksploratorze rozwiązań, a następnie wybierz pozycję Właściwości. W polu tekstowym Target Framework (Struktura docelowa ) pokazano, że projekt jest przeznaczony dla platformy .NET 8.0.
Jeśli używasz języka Visual Basic, wyczyść tekst w polu tekstowym Główna przestrzeń nazw .
Dla każdego projektu program Visual Basic automatycznie tworzy przestrzeń nazw odpowiadającą nazwie projektu. W tym samouczku zdefiniujesz przestrzeń nazw najwyższego poziomu przy użyciu
namespacesłowa kluczowego w pliku kodu.Zastąp kod w oknie kodu Class1.cs lub Class1.vb następującym kodem, a następnie zapisz plik. Jeśli język, którego chcesz użyć, nie jest wyświetlany, zmień selektor języka w górnej części strony.
namespace UtilityLibraries; public static class StringLibrary { public static bool StartsWithUpper(this string? str) { if (string.IsNullOrWhiteSpace(str)) return false; return char.IsUpper(str[0]); } }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 NamespaceBiblioteka klas ,
UtilityLibraries.StringLibraryzawiera metodę o nazwieStartsWithUpper. Ta metoda zwraca wartość Boolean, która wskazuje, czy bieżące wystąpienie ciągu zaczyna się od wielkiej litery. Standard Unicode rozróżnia wielkie litery od małych liter. Metoda Char.IsUpper(Char) zwracatrue, jeśli znak jest wielką literą.StartsWithUpperjest implementowany jako metoda rozszerzenia , aby można było wywołać ją tak, jakby była składową String klasy. Znak zapytania (?) postringw kodzie języka C# wskazuje, że ciąg może mieć wartość null.Na pasku menu wybierz pozycję Kompiluj>rozwiązanie kompilacji lub naciśnij Ctrl+Shift+B , aby sprawdzić, czy projekt kompiluje się bez błędu.
Dodawanie aplikacji konsolowej do rozwiązania
Dodaj aplikację konsolową korzystającą z biblioteki klas. Aplikacja wyświetli użytkownikowi monit o wprowadzenie ciągu i zgłoszenie, czy ciąg zaczyna się od wielkiej litery.
Dodaj nową aplikację konsolową platformy .NET o nazwie "ShowCase" do rozwiązania.
Kliknij prawym przyciskiem myszy rozwiązanie w Eksploratorze rozwiązań i wybierz polecenie Dodaj>nowy projekt.
Na stronie Dodawanie nowego projektu wprowadź konsolę w polu wyszukiwania. Wybierz pozycję C# lub Visual Basic z listy Język, a następnie z listy Platforma wybierz pozycję Wszystkie platformy .
Wybierz szablon Aplikacja konsolowa , a następnie wybierz pozycję Dalej.
Na stronie Konfigurowanie nowego projektu wpisz ShowCase w polu Nazwa projektu . Następnie wybierz pozycję Dalej.
Na stronie Dodatkowe informacje wybierz pozycję .NET 8 w polu Framework . Następnie wybierz pozycję Utwórz.
W oknie kodu dla pliku Program.cs lub Program.vb zastąp cały kod następującym kodem.
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 ModuleKod używa zmiennej
rowdo obsługi liczby wierszy danych zapisanych w oknie konsoli. Za każdym razem, gdy jest on większy lub równy 25, kod czyści okno konsoli i wyświetla użytkownikowi komunikat.Program zachęca użytkownika do wprowadzenia ciągu. Wskazuje, czy ciąg zaczyna się od wielkiej litery. Jeśli użytkownik naciska Enter bez wprowadzania ciągu, aplikacja kończy się, a okno konsoli zostanie zamknięte.
Dodawanie odwołania do projektu
Początkowo nowy projekt aplikacji konsolowej nie ma dostępu do biblioteki klas. Aby umożliwić wywoływanie metod w bibliotece klas, utwórz odwołanie projektu do projektu biblioteki klas.
W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy
ShowCasewęzeł Zależności projektu i wybierz polecenie Dodaj odwołanie do projektu.
W oknie dialogowym Menedżer odwołań wybierz projekt StringLibrary i wybierz przycisk OK.
Uruchamianie aplikacji
W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy projekt ShowCase i wybierz polecenie Ustaw jako projekt startowy w menu kontekstowym.
Naciśnij Ctrl+F5 , aby skompilować i uruchomić program bez debugowania.
Wypróbuj program, wprowadzając ciągi i naciskając Enter, a następnie naciśnij Enter , aby zakończyć.
Dodatkowe zasoby
- Opracowywanie bibliotek przy użyciu interfejsu wiersza polecenia platformy .NET
- Wersje platformy .NET Standard i obsługiwane przez nie platformy.
Dalsze kroki
W tym samouczku utworzono bibliotekę klas. W następnym samouczku nauczysz się, jak przeprowadzać testy jednostkowe biblioteki klas.
Możesz też pominąć zautomatyzowane testowanie jednostkowe i dowiedzieć się, jak udostępnić bibliotekę, tworząc pakiet NuGet:
Możesz też dowiedzieć się, jak opublikować aplikację konsolową. Jeśli opublikujesz aplikację konsolową z rozwiązania utworzonego w tym samouczku, biblioteka klas zostanie dołączona jako plik .dll.