Udostępnij przez


Samouczek: tworzenie biblioteki klas platformy .NET przy użyciu programu Visual Studio Code

W tym samouczku utworzysz prostą bibliotekę narzędzi zawierającą jedną metodę do obsługi ciągów znaków.

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 10, może być wywoływana przez dowolną aplikację docelową platformy .NET 10. W tym samouczku przedstawiono sposób wykorzystania platformy .NET 10.

Podczas tworzenia biblioteki klas można ją dystrybuować jako składnik innej firmy lub jako składnik powiązany z co najmniej jedną aplikacją.

Warunki wstępne

  • Najnowszy .NET SDK
  • Edytor programu Visual Studio Code
  • Zestaw deweloperski C#

Instrukcje instalacji

W systemie Windows użyj tego pliku konfiguracyjnego WinGet , aby zainstalować wszystkie wymagane komponenty wstępne. Jeśli masz już coś zainstalowanego, usługa WinGet pominie ten krok.

  1. Pobierz plik i kliknij dwukrotnie, aby go uruchomić.
  2. Przeczytaj umowę licencyjną, wpisz yi wybierz pozycję Wprowadź po wyświetleniu monitu o zaakceptowanie.
  3. Jeśli na pasku zadań zostanie wyświetlony monit kontroli konta użytkownika (UAC), zezwól na kontynuowanie instalacji.

Na innych platformach należy zainstalować każdy z tych składników oddzielnie.

  1. Pobierz zalecany instalator ze strony pobierania zestawu SDK platformy .NET i kliknij dwukrotnie, aby go uruchomić. Strona pobierania wykrywa platformę i zaleca najnowszy instalator twojej platformy.
  2. Pobierz najnowszy instalator z strony głównej programu Visual Studio Code i kliknij dwukrotnie, aby go uruchomić. Ta strona wykrywa również platformę, a link powinien być poprawny dla twojego systemu.
  3. Kliknij przycisk "Zainstaluj" na stronie rozszerzenia C# DevKit. Spowoduje to otwarcie programu Visual Studio Code i pytanie, czy chcesz zainstalować lub włączyć rozszerzenie. Wybierz pozycję "Zainstaluj".

Tworzenie projektu biblioteki klas

Zacznij od utworzenia projektu biblioteki klas platformy .NET o nazwie "StringLibrary" i skojarzonego rozwiązania. Rozwiązanie służy jako kontener dla co najmniej jednego projektu. Dodasz dodatkowe, powiązane projekty do tego samego rozwiązania.

  1. Uruchom program Visual Studio Code.

  2. Przejdź do widoku Eksploratora i wybierz pozycję Utwórz projekt platformy .NET. Alternatywnie możesz wyświetlić paletę poleceń przy użyciu Ctrl+Shift+P (Command+Shift+P w systemie MacOS), a następnie wpisać ".NET" i znaleźć i wybrać polecenie .NET: New Project.

  3. Wybierz bibliotekę klas szablonu projektu.

  4. Następnie wybierz lokalizację, w której chcesz utworzyć nowy projekt: utwórz folder o nazwie ClassLibraryProjects i wybierz go.

  5. Nadaj projektowi nazwę StringLibrary.

  6. Wybierz .sln jako format pliku rozwiązania.

  7. Wybierz pozycję Pokaż wszystkie opcje szablonu.

  8. Następnie wybierz pozycję .NET 10. Następnie wybierz pozycję Utwórz projekt.

  9. W oknie dialogowym Czy ufasz autorom plików w tym folderze? wybierz pozycję Tak, ufam autorom. Autorom można ufać, ponieważ ten folder zawiera tylko pliki wygenerowane przez platformę .NET i dodane lub zmodyfikowane przez Ciebie.

  10. Projekt zostanie utworzony i zostanie otwarty Class1.cs .

  11. Zastąp zawartość Class1.cs następującym kodem:

    namespace UtilityLibraries;
    
    public static class StringLibrary
    {
        public static bool StartsWithUpper(this string? str)
        {
            if (string.IsNullOrWhiteSpace(str))
                return false;
    
            return char.IsUpper(str[0]);
        }
    }
    

    Biblioteka klas UtilityLibraries.StringLibraryzawiera metodę o nazwie StartsWithUpper. Ta metoda zwraca wartość Boolean wskazującą, 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) zwraca true, jeśli znak jest wielkimi literami.

    StartsWithUpper jest implementowana jako metoda rozszerzenia , aby można było wywołać ją tak, jakby była elementem członkowskim klasy String.

  12. Zapisz plik.

  13. Rozwiń Eksplorator rozwiązań na dole widoku Eksploratora.

  14. Kliknij prawym przyciskiem myszy rozwiązanie w Eksploratorze rozwiązań i wybierz opcję Kompilujlub otwórz paletę poleceń i wybierz .NET: Skompiluj, aby zbudować rozwiązanie i sprawdzić, czy projekt kompiluje się bez błędów.

    Dane wyjściowe terminalu wyglądają jak w poniższym przykładzie:

      Determining projects to restore...
      All projects are up-to-date for restore.
      StringLibrary -> C:\Projects\ClassLibraryProjects\StringLibrary\bin\Debug\net10.0\StringLibrary.dll
    Build succeeded.
        0 Warning(s)
        0 Error(s)
    Time Elapsed 00:00:02.78
    

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.

  1. Kliknij rozwiązanie prawym przyciskiem myszy w eksploratorze rozwiązań i wybierz pozycję Nowy projektlub w palecie poleceń wybierz pozycję .NET: Nowy projekt.

  2. Wybierz pozycję Aplikacja konsolowa.

  3. Nadaj mu nazwę ShowCase, wybierz katalog domyślny i wybierz pozycję Utwórz projekt.

  4. Otwórz ShowCase/Program.cs i 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;
            }
        }
    }
    

    Kod używa zmiennej row, aby zachować liczbę 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 prosi użytkownika o wprowadzenie ciągu znaków. Wskazuje, czy ciąg zaczyna się od wielkiej litery. Jeśli użytkownik naciśnie Enter bez wprowadzania ciągu, aplikacja kończy się, a okno konsoli zostanie zamknięte.

  5. Zapisz zmiany.

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.

  1. W Eksploratorze rozwiązań kliknij prawym przyciskiem myszy projekt ShowCase i wybierz Dodaj odwołanie do projektu.

  2. Wybierz StringLibrary.

Wskazówka

Alternatywnie dodaj następujące do pliku ShowCase.csproj:

<ItemGroup>
  <ProjectReference Include="..\StringLibrary\StringLibrary.csproj" />
</ItemGroup>

Uruchamianie aplikacji

  1. Użyj górnego paska menu, aby wybrać pozycję Uruchom bez>debugowania.

  2. Wybierz , C#,.

  3. Wybierz pozycję C#: ShowCase.

    Jeśli zostanie wyświetlony komunikat o błędzie informujący o braku załadowanego programu w języku C#, zamknij otwarty folder i otwórz folder ShowCase. Następnie spróbuj ponownie uruchomić aplikację.

  4. Wypróbuj program, wprowadzając ciągi i naciskając Enter, a następnie naciśnij Enter, aby zakończyć.

    Dane wyjściowe terminalu wyglądają jak w poniższym przykładzie:

    Press <Enter> only to exit; otherwise, enter a string and press <Enter>:
    
    A string that starts with an uppercase letter
    Input: A string that starts with an uppercase letter
    Begins with uppercase? : Yes
    
    a string that starts with a lowercase letter
    Input: a string that starts with a lowercase letter
    Begins with uppercase? : No
    

Dodatkowe zasoby

Następne kroki

W tym samouczku utworzyłeś projekt biblioteki i dodałeś projekt aplikacji konsolowej, który używa tej biblioteki. W następnym kroku samouczka dodasz projekt testu jednostkowego do rozwiązania.