Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
In deze tutorial maakt u een eenvoudige bibliotheek die één methode voor het bewerken van tekenreeksen bevat.
Een klassebibliotheek definieert typen en methoden die worden aangeroepen door een toepassing. Als de bibliotheek is gericht op .NET Standard 2.0, kan deze worden aangeroepen door elke .NET-implementatie (inclusief .NET Framework) die ondersteuning biedt voor .NET Standard 2.0. Als de bibliotheek is gericht op .NET 9, kan deze worden aangeroepen door elke toepassing die is gericht op .NET 9. Deze handleiding laat zien hoe u zich op .NET 9 kunt richten.
Wanneer u een klassebibliotheek maakt, kunt u deze distribueren als een onderdeel van derden of als een gebundeld onderdeel met een of meer toepassingen.
Benodigdheden
- De nieuwste .NET SDK-
- Visual Studio Code-editor
- De C# DevKit
Installatie-instructies
Op Windows wordt dit WinGet-configuratiebestand gebruikt om alle vereisten te installeren. Als u al iets hebt geïnstalleerd, slaat WinGet die stap over.
- Download het bestand en dubbelklik erop om het uit te voeren.
- Lees de gebruiksrechtovereenkomst, typ yen selecteer Enter wanneer u wordt gevraagd om te accepteren.
- Als u een knipperende UAC-prompt (User Account Control) krijgt op de taakbalk, staat u de installatie toe om door te gaan.
Op andere platforms moet u elk van deze onderdelen afzonderlijk installeren.
- Download het aanbevolen installatieprogramma op de downloadpagina van de .NET SDK en dubbelklik erop om het uit te voeren. De downloadpagina detecteert uw platform en raadt het meest recente installatieprogramma voor uw platform aan.
- Download het meest recente installatieprogramma van de Visual Studio Code startpagina en dubbelklik erop om het uit te voeren. Deze pagina detecteert ook uw platform en de koppeling moet juist zijn voor uw systeem.
- Klik op de knop Installeren op de pagina C# DevKit extensie. Hiermee opent u Visual Studio-code en wordt gevraagd of u de extensie wilt installeren of inschakelen. Selecteer 'installeren'.
Een klassebibliotheekproject maken
Begin met het maken van een .NET-klassebibliotheekproject met de naam StringLibrary en een bijbehorende oplossing. Een oplossing fungeert als een container voor een of meer projecten. U voegt extra gerelateerde projecten toe aan dezelfde oplossing.
Visual Studio Code starten.
Ga naar de verkennerweergave en selecteer .NET-project maken. U kunt ook het opdrachtenpalet openen met Ctrl+Shift+P (Command+Shift+P in MacOS) en vervolgens '.NET' typen en de opdracht .NET: New Project zoeken en selecteren.
Nadat u de opdracht hebt geselecteerd, moet u de projectsjabloon kiezen. Kies klassebibliotheek.
Selecteer vervolgens de locatie waar u het nieuwe project wilt maken.
Selecteer vervolgens de locatie waar u het nieuwe project wilt maken: Maak een map met de naam
ClassLibraryProjects
en selecteer het.Geef het project de naam StringLibrary, selecteer Alle sjabloonopties weergeven, selecteer .NET 9- en selecteer Project maken.
Geef het project de naam StringLibrary en selecteer Project maken.
Druk op Enter bij de prompt om het project te maken in het pad <>.
Controleer en zorg ervoor dat de bibliotheek is ingesteld op .NET 9. Open StringLibrary/StringLibrary.csprojin Explorer.
Het element
TargetFramework
laat zien dat het project is gericht op .NET 9.0.<Project Sdk="Microsoft.NET.Sdk"> <PropertyGroup> <TargetFramework>net9.0</TargetFramework> </PropertyGroup> </Project>
Open Class1.cs en vervang de code door de volgende 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); } } }
De klassebibliotheek,
UtilityLibraries.StringLibrary
, bevat een methode met de naamStartsWithUpper
. Deze methode retourneert een Boolean-waarde die aangeeft of het huidige tekenreeks begint met een hoofdletter. De Unicode-standaard onderscheidt hoofdletters van kleine letters. De methode Char.IsUpper(Char) retourneerttrue
als een teken hoofdletters bevat.StartsWithUpper
wordt geïmplementeerd als een extensiemethode, zodat u deze kunt aanroepen alsof deze lid is van de String-klasse.Sla het bestand op.
Vouw Solution Explorer onderaan de Explorer-weergave uit.
Klik met de rechtermuisknop op de oplossing in Solution Explorer en selecteer Build, of open het opdrachtenpalet en selecteer .NET: Bouw om de oplossing te bouwen en controleer of het project zonder fouten wordt gecompileerd.
De terminaluitvoer ziet eruit als in het volgende voorbeeld:
Microsoft (R) Build Engine version 17.8.0+b89cb5fde for .NET Copyright (C) Microsoft Corporation. All rights reserved. Determining projects to restore... All projects are up-to-date for restore. StringLibrary -> C:\Projects\ClassLibraryProjects\StringLibrary\bin\Debug\net9.0\StringLibrary.dll Build succeeded. 0 Warning(s) 0 Error(s) Time Elapsed 00:00:02.78
Een console-app toevoegen aan de oplossing
Voeg een consoletoepassing toe die gebruikmaakt van de klassebibliotheek. De app vraagt de gebruiker om een tekenreeks in te voeren en te rapporteren of de tekenreeks begint met een hoofdletter.
Klik met de rechtermuisknop op de oplossing in Solution Explorer en selecteer Nieuw projectof selecteer in het opdrachtpalet .NET: Nieuw project.
Selecteer Console-app.
Geef de naam ShowCase, selecteer de standaardlocatie en selecteer Project maken.
Open ShowCase/Program.cs en vervang alle code door de volgende 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")}{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; } } }
De code maakt gebruik van de
row
variabele voor het bijhouden van het aantal rijen met gegevens dat naar het consolevenster is geschreven. Wanneer dit groter is dan of gelijk is aan 25, wordt het consolevenster gewist en wordt een bericht aan de gebruiker getoond.Het programma vraagt de gebruiker om een tekenreeks in te voeren. Hiermee wordt aangegeven of de tekenreeks begint met een hoofdletter. Als de gebruiker op de Enter-toets drukt zonder een tekenreeks in te voeren, wordt de toepassing beëindigd en wordt het consolevenster gesloten.
Sla uw wijzigingen op.
Een projectreferentie toevoegen
In eerste instantie heeft het nieuwe console-app-project geen toegang tot de klassebibliotheek. Als u wilt toestaan dat methoden in de klassebibliotheek worden aangeroepen, maakt u een projectreferentie naar het klassebibliotheekproject.
Klik in Solution Explorer met de rechtermuisknop op het project ShowCase en selecteer Projectverwijzing toevoegen.
Selecteer StringLibrary.
De app uitvoeren
Selecteer Uitvoeren>Uitvoeren zonder debuggen.
Selecteer C#.
Selecteer ShowCase.
Als er een foutbericht wordt weergegeven dat er geen C#-programma is geladen, sluit u de map die u hebt geopend en opent u de
ShowCase
map. Voer vervolgens de app opnieuw uit.Probeer het programma uit door tekenreeksen in te voeren en op Enter-te drukken en druk vervolgens op Enter- om af te sluiten.
De terminaluitvoer ziet eruit als in het volgende voorbeeld:
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
Aanvullende bronnen
- Bibliotheken ontwikkelen met de .NET CLI-
- .NET Standard-versies en de platforms die ze ondersteunen.
Volgende stappen
In deze zelfstudie hebt u een bibliotheekproject gemaakt en een console-app-project toegevoegd dat gebruikmaakt van de bibliotheek. In de volgende zelfstudie voegt u een eenheidstestproject toe aan de oplossing.