Tutoriel : Créer une bibliothèque de classes .NET à l’aide de Visual Studio

Dans ce tutoriel, vous créez une bibliothèque de classes simple qui contient une méthode de gestion de chaîne unique.

Une bibliothèque de classes définit des types et des méthodes qui peuvent être appelés par une application. Si la bibliothèque cible .NET Standard 2.0, elle peut être appelée par n’importe quelle implémentation .NET (y compris .NET Framework) qui prend en charge .NET Standard 2.0. Si la bibliothèque cible .NET 8, elle peut être appelée par n’importe quelle application qui cible .NET 8. Ce tutoriel montre comment cibler .NET 8.

Lorsque vous créez une bibliothèque de classes, vous pouvez la distribuer en tant que package NuGet ou en tant que composant groupé avec l’application qui l’utilise.

Prerequisites

Créer une solution

Commencez par créer une solution vide dans laquelle placer le projet de bibliothèque de classes. Une solution Visual Studio sert de conteneur pour un ou plusieurs projets. Vous allez ajouter des projets supplémentaires associés à la même solution.

Pour créer la solution vide :

  1. Démarrez Visual Studio.

  2. Dans la fenêtre de démarrage, choisissez Créer un projet.

  3. Dans la page Créer un projet, entrez solution dans la zone de recherche. Choisissez le modèle Solution vide, puis Suivant.

    Blank solution template in Visual Studio

  4. Dans la page Configurer votre nouveau projet, entrez ClassLibraryProjects dans la zone Nom de la solution. Choisissez ensuite Créer.

Créer un projet de bibliothèque de classes

  1. Ajoutez un nouveau projet de bibliothèque de classes .NET nommé « StringLibrary » à la solution.

    1. Cliquez avec le bouton droit sur la solution dans l’Explorateur de solutions, puis sélectionnez Ajouter>Nouveau projet.

    2. Dans la page Ajouter un nouveau projet, entrez bibliothèque dans la zone de recherche. Choisissez C# ou Visual Basic dans la liste de langages, puis choisissez Toutes les plateformes dans la liste des plateformes. Choisissez le modèle Bibliothèque de classes, puis Suivant.

    3. Dans la page Configurer votre nouveau projet, entrez StringLibrary dans la zone Nom du projet, puis choisissez Suivant.

    4. Dans la page Informations supplémentaires, sélectionnez .NET 8 (préversion), puis choisissez Créer.

  2. Vérifiez que la bibliothèque cible la version correcte de .NET. Cliquez avec le bouton droit sur le projet de bibliothèque dans l’Explorateur de solutions, puis sélectionnez Propriétés. La zone de texte Target Framework indique que le projet cible .NET 7.0.

  3. Si vous utilisez Visual Basic, effacez le texte dans la zone de texte Espace de noms racine.

    Project properties for the class library

    Pour chaque projet, Visual Basic crée automatiquement un espace de noms qui correspond au nom du projet. Dans ce tutoriel, vous définissez un espace de noms de niveau supérieur à l’aide du mot clé namespace dans le fichier de code.

  4. Remplacez le code dans la fenêtre de code pour Class1.cs ou Class1.vb par le code suivant, puis enregistrez le fichier. Si le langage que vous souhaitez utiliser n’est pas affiché, modifiez le sélecteur de langage en haut de la page.

    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
    

    La bibliothèque de classes UtilityLibraries.StringLibrary contient une méthode nommée StartsWithUpper. Cette méthode retourne une valeur Boolean qui indique si l’instance de chaîne actuelle commence par un caractère majuscule. La norme Unicode distingue les caractères minuscules des caractères majuscules. La méthode Char.IsUpper(Char) retourne true si un caractère est en majuscule.

    StartsWithUpper est implémenté en tant que méthode d’extension afin que vous puissiez l’appeler comme s’il s’agissait d’un membre de la classe String. Le point d’interrogation (?) après string dans le code C# indique que la chaîne peut avoir la valeur null.

  5. Dans la barre de menus, sélectionnez Générer>Générer la solution ou appuyez sur Ctrl+Maj+B pour vérifier que le projet se compile sans erreur.

Ajouter une application console à la solution

Ajoutez une application console qui utilise la bibliothèque de classes. L’application invite l’utilisateur à entrer une chaîne et à signaler si la chaîne commence par un caractère majuscule.

  1. Ajoutez une nouvelle application console .NET nommée « ShowCase » à la solution.

    1. Cliquez avec le bouton droit sur la solution dans l’Explorateur de solutions, puis sélectionnez Ajouter>Nouveau projet.

    2. Dans la page Ajouter un nouveau projet, entrez console dans la zone de recherche. Choisissez C# ou Visual Basic dans la liste de langages, puis choisissez Toutes les plateformes dans la liste des plateformes.

    3. Choisissez le modèle Application console, puis choisissez Suivant.

    4. Dans la page Configurer votre nouveau projet, entrez ShowCase dans la zone Nom du projet. Ensuite, choisissez Suivant.

    5. Dans la page Informations supplémentaires, sélectionnez .NET 8 (Préversion) dans la zone Framework. Choisissez ensuite Créer.

  2. Dans la fenêtre de code du fichier Program.cs ou Program.vb, remplacez tout le code par le code suivant.

    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}");
                Console.WriteLine("Begins with uppercase? " +
                     $"{(input.StartsWithUpper() ? "Yes" : "No")}");
                Console.WriteLine();
                row += 4;
            } 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
    

    Le code utilise la variable row pour comptabiliser le nombre de lignes de données écrites dans la fenêtre de console. Chaque fois que ce nombre est supérieur ou égal à 25, le code efface la fenêtre de console et envoie un message à l’utilisateur.

    Le programme invite l’utilisateur à entrer une chaîne. Il indique si la chaîne commence par une majuscule. Si l’utilisateur appuie sur la touche Entrée sans entrer de chaîne, l’application et la fenêtre de console se ferment.

Ajouter une référence au projet

Initialement, le nouveau projet d’application console n’a pas accès à la bibliothèque de classes. Pour lui permettre d’appeler des méthodes dans la bibliothèque de classes, créez une référence de projet au projet de bibliothèque de classes.

  1. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nœud Dépendances du projet ShowCase et sélectionnez Ajouter une référence de projet.

    Add reference context menu in Visual Studio

  2. Dans la boîte de dialogue Gestionnaire de références, sélectionnez le projet StringLibrary, puis sélectionnez OK.

    Reference Manager dialog with StringLibrary selected

Exécuter l’application

  1. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le projet ShowCase, puis sélectionnez Définir comme projet de démarrage dans le menu contextuel.

    Visual Studio project context menu to set startup project

  2. Appuyez sur Ctrl+F5 pour compiler et exécuter le programme sans débogage.

  3. Essayez le programme en entrant des chaînes et en appuyant sur Entrée, puis appuyez sur Entrée pour quitter.

    Console window with ShowCase running

Ressources supplémentaires

Étapes suivantes

Dans ce tutoriel, vous avez créé une bibliothèque de classes. Dans le tutoriel suivant, vous allez apprendre à tester unitairement la bibliothèque de classes.

Vous pouvez également ignorer les tests unitaires automatisés et apprendre à partager la bibliothèque en créant un package NuGet :

Vous pouvez également apprendre à publier une application console. Si vous publiez l’application console à partir de la solution que vous avez créée dans ce tutoriel, la bibliothèque de classes l’utilise en tant que fichier .dll.

Dans ce tutoriel, vous créez une bibliothèque de classes simple qui contient une méthode de gestion de chaîne unique.

Une bibliothèque de classes définit des types et des méthodes qui peuvent être appelés par une application. Si la bibliothèque cible .NET Standard 2.0, elle peut être appelée par n’importe quelle implémentation .NET (y compris .NET Framework) qui prend en charge .NET Standard 2.0. Si la bibliothèque cible .NET 7, elle peut être appelée par n’importe quelle application qui cible .NET 7. Ce tutoriel montre comment cibler .NET 7.

Lorsque vous créez une bibliothèque de classes, vous pouvez la distribuer en tant que package NuGet ou en tant que composant groupé avec l’application qui l’utilise.

Prérequis

Créer une solution

Commencez par créer une solution vide dans laquelle placer le projet de bibliothèque de classes. Une solution Visual Studio sert de conteneur pour un ou plusieurs projets. Vous allez ajouter des projets supplémentaires associés à la même solution.

Pour créer la solution vide :

  1. Démarrez Visual Studio.

  2. Dans la fenêtre de démarrage, choisissez Créer un projet.

  3. Dans la page Créer un projet, entrez solution dans la zone de recherche. Choisissez le modèle Solution vide, puis Suivant.

    Blank solution template in Visual Studio

  4. Dans la page Configurer votre nouveau projet, entrez ClassLibraryProjects dans la zone Nom de la solution. Choisissez ensuite Créer.

Créer un projet de bibliothèque de classes

  1. Ajoutez un nouveau projet de bibliothèque de classes .NET nommé « StringLibrary » à la solution.

    1. Cliquez avec le bouton droit sur la solution dans l’Explorateur de solutions, puis sélectionnez Ajouter>Nouveau projet.

    2. Dans la page Ajouter un nouveau projet, entrez bibliothèque dans la zone de recherche. Choisissez C# ou Visual Basic dans la liste de langages, puis choisissez Toutes les plateformes dans la liste des plateformes. Choisissez le modèle Bibliothèque de classes, puis Suivant.

    3. Dans la page Configurer votre nouveau projet, entrez StringLibrary dans la zone Nom du projet, puis choisissez Suivant.

    4. Dans la page Informations supplémentaires, sélectionnez .NET 7 (prise en charge à terme standard), puis choisissez Créer.

  2. Vérifiez que la bibliothèque cible la version correcte de .NET. Cliquez avec le bouton droit sur le projet de bibliothèque dans l’Explorateur de solutions, puis sélectionnez Propriétés. La zone de texte Target Framework indique que le projet cible .NET 7.0.

  3. Si vous utilisez Visual Basic, effacez le texte dans la zone de texte Espace de noms racine.

    Project properties for the class library

    Pour chaque projet, Visual Basic crée automatiquement un espace de noms qui correspond au nom du projet. Dans ce tutoriel, vous définissez un espace de noms de niveau supérieur à l’aide du mot clé namespace dans le fichier de code.

  4. Remplacez le code dans la fenêtre de code pour Class1.cs ou Class1.vb par le code suivant, puis enregistrez le fichier. Si le langage que vous souhaitez utiliser n’est pas affiché, modifiez le sélecteur de langage en haut de la page.

    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
    

    La bibliothèque de classes UtilityLibraries.StringLibrary contient une méthode nommée StartsWithUpper. Cette méthode retourne une valeur Boolean qui indique si l’instance de chaîne actuelle commence par un caractère majuscule. La norme Unicode distingue les caractères minuscules des caractères majuscules. La méthode Char.IsUpper(Char) retourne true si un caractère est en majuscule.

    StartsWithUpper est implémenté en tant que méthode d’extension afin que vous puissiez l’appeler comme s’il s’agissait d’un membre de la classe String. Le point d’interrogation (?) après string dans le code C# indique que la chaîne peut avoir la valeur null.

  5. Dans la barre de menus, sélectionnez Générer>Générer la solution ou appuyez sur Ctrl+Maj+B pour vérifier que le projet se compile sans erreur.

Ajouter une application console à la solution

Ajoutez une application console qui utilise la bibliothèque de classes. L’application invite l’utilisateur à entrer une chaîne et à signaler si la chaîne commence par un caractère majuscule.

  1. Ajoutez une nouvelle application console .NET nommée « ShowCase » à la solution.

    1. Cliquez avec le bouton droit sur la solution dans l’Explorateur de solutions, puis sélectionnez Ajouter>Nouveau projet.

    2. Dans la page Ajouter un nouveau projet, entrez console dans la zone de recherche. Choisissez C# ou Visual Basic dans la liste de langages, puis choisissez Toutes les plateformes dans la liste des plateformes.

    3. Choisissez le modèle Application console, puis choisissez Suivant.

    4. Dans la page Configurer votre nouveau projet, entrez ShowCase dans la zone Nom du projet. Ensuite, choisissez Suivant.

    5. Dans la page Informations supplémentaires, sélectionnez .NET 7 (prise en charge à terme standard) dans la zone Framework. Choisissez ensuite Créer.

  2. Dans la fenêtre de code du fichier Program.cs ou Program.vb, remplacez tout le code par le code suivant.

    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}");
                Console.WriteLine("Begins with uppercase? " +
                     $"{(input.StartsWithUpper() ? "Yes" : "No")}");
                Console.WriteLine();
                row += 4;
            } 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
    

    Le code utilise la variable row pour comptabiliser le nombre de lignes de données écrites dans la fenêtre de console. Chaque fois que ce nombre est supérieur ou égal à 25, le code efface la fenêtre de console et envoie un message à l’utilisateur.

    Le programme invite l’utilisateur à entrer une chaîne. Il indique si la chaîne commence par une majuscule. Si l’utilisateur appuie sur la touche Entrée sans entrer de chaîne, l’application et la fenêtre de console se ferment.

Ajouter une référence au projet

Initialement, le nouveau projet d’application console n’a pas accès à la bibliothèque de classes. Pour lui permettre d’appeler des méthodes dans la bibliothèque de classes, créez une référence de projet au projet de bibliothèque de classes.

  1. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nœud Dépendances du projet ShowCase et sélectionnez Ajouter une référence de projet.

    Add reference context menu in Visual Studio

  2. Dans la boîte de dialogue Gestionnaire de références, sélectionnez le projet StringLibrary, puis sélectionnez OK.

    Reference Manager dialog with StringLibrary selected

Exécuter l’application

  1. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le projet ShowCase, puis sélectionnez Définir comme projet de démarrage dans le menu contextuel.

    Visual Studio project context menu to set startup project

  2. Appuyez sur Ctrl+F5 pour compiler et exécuter le programme sans débogage.

  3. Essayez le programme en entrant des chaînes et en appuyant sur Entrée, puis appuyez sur Entrée pour quitter.

    Console window with ShowCase running

Ressources supplémentaires

Étapes suivantes

Dans ce tutoriel, vous avez créé une bibliothèque de classes. Dans le tutoriel suivant, vous allez apprendre à tester unitairement la bibliothèque de classes.

Vous pouvez également ignorer les tests unitaires automatisés et apprendre à partager la bibliothèque en créant un package NuGet :

Vous pouvez également apprendre à publier une application console. Si vous publiez l’application console à partir de la solution que vous avez créée dans ce tutoriel, la bibliothèque de classes l’utilise en tant que fichier .dll.

Dans ce tutoriel, vous créez une bibliothèque de classes simple qui contient une méthode de gestion de chaîne unique.

Une bibliothèque de classes définit des types et des méthodes qui peuvent être appelés par une application. Si la bibliothèque cible .NET Standard 2.0, elle peut être appelée par n’importe quelle implémentation .NET (y compris .NET Framework) qui prend en charge .NET Standard 2.0. Si la bibliothèque cible .NET 6, elle peut être appelée par n’importe quelle application qui cible .NET 6. Ce tutoriel montre comment cibler .NET 6.

Lorsque vous créez une bibliothèque de classes, vous pouvez la distribuer en tant que package NuGet ou en tant que composant groupé avec l’application qui l’utilise.

Prérequis

Créer une solution

Commencez par créer une solution vide dans laquelle placer le projet de bibliothèque de classes. Une solution Visual Studio sert de conteneur pour un ou plusieurs projets. Vous allez ajouter des projets supplémentaires associés à la même solution.

Pour créer la solution vide :

  1. Démarrez Visual Studio.

  2. Dans la fenêtre de démarrage, choisissez Créer un projet.

  3. Dans la page Créer un projet, entrez solution dans la zone de recherche. Choisissez le modèle Solution vide, puis Suivant.

    Blank solution template in Visual Studio

  4. Dans la page Configurer votre nouveau projet, entrez ClassLibraryProjects dans la zone Nom de la solution. Choisissez ensuite Créer.

Créer un projet de bibliothèque de classes

  1. Ajoutez un nouveau projet de bibliothèque de classes .NET nommé « StringLibrary » à la solution.

    1. Cliquez avec le bouton droit sur la solution dans l’Explorateur de solutions, puis sélectionnez Ajouter>Nouveau projet.

    2. Dans la page Ajouter un nouveau projet, entrez bibliothèque dans la zone de recherche. Choisissez C# ou Visual Basic dans la liste de langages, puis choisissez Toutes les plateformes dans la liste des plateformes. Choisissez le modèle Bibliothèque de classes, puis Suivant.

    3. Dans la page Configurer votre nouveau projet, entrez StringLibrary dans la zone Nom du projet, puis choisissez Suivant.

    4. Dans la page Informations supplémentaires, sélectionnez .NET 6 (prise en charge à long terme), puis choisissez Créer.

  2. Vérifiez que la bibliothèque cible la version correcte de .NET. Cliquez avec le bouton droit sur le projet de bibliothèque dans l’Explorateur de solutions, puis sélectionnez Propriétés. La zone de texte Target Framework indique que le projet cible .NET 6.0.

  3. Si vous utilisez Visual Basic, effacez le texte dans la zone de texte Espace de noms racine.

    Project properties for the class library

    Pour chaque projet, Visual Basic crée automatiquement un espace de noms qui correspond au nom du projet. Dans ce tutoriel, vous définissez un espace de noms de niveau supérieur à l’aide du mot clé namespace dans le fichier de code.

  4. Remplacez le code dans la fenêtre de code pour Class1.cs ou Class1.vb par le code suivant, puis enregistrez le fichier. Si le langage que vous souhaitez utiliser n’est pas affiché, modifiez le sélecteur de langage en haut de la page.

    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
    

    La bibliothèque de classes UtilityLibraries.StringLibrary contient une méthode nommée StartsWithUpper. Cette méthode retourne une valeur Boolean qui indique si l’instance de chaîne actuelle commence par un caractère majuscule. La norme Unicode distingue les caractères minuscules des caractères majuscules. La méthode Char.IsUpper(Char) retourne true si un caractère est en majuscule.

    StartsWithUpper est implémenté en tant que méthode d’extension afin que vous puissiez l’appeler comme s’il s’agissait d’un membre de la classe String. Le point d’interrogation (?) après string dans le code C# indique que la chaîne peut avoir la valeur null.

  5. Dans la barre de menus, sélectionnez Générer>Générer la solution ou appuyez sur Ctrl+Maj+B pour vérifier que le projet se compile sans erreur.

Ajouter une application console à la solution

Ajoutez une application console qui utilise la bibliothèque de classes. L’application invite l’utilisateur à entrer une chaîne et à signaler si la chaîne commence par un caractère majuscule.

  1. Ajoutez une nouvelle application console .NET nommée « ShowCase » à la solution.

    1. Cliquez avec le bouton droit sur la solution dans l’Explorateur de solutions, puis sélectionnez Ajouter>Nouveau projet.

    2. Dans la page Ajouter un nouveau projet, entrez console dans la zone de recherche. Choisissez C# ou Visual Basic dans la liste de langages, puis choisissez Toutes les plateformes dans la liste des plateformes.

    3. Choisissez le modèle Application console, puis choisissez Suivant.

    4. Dans la page Configurer votre nouveau projet, entrez ShowCase dans la zone Nom du projet. Ensuite, choisissez Suivant.

    5. Dans la page Informations supplémentaires, sélectionnez .NET 6 (prise en charge à long terme) dans la zone Framework. Choisissez ensuite Créer.

  2. Dans la fenêtre de code du fichier Program.cs ou Program.vb, remplacez tout le code par le code suivant.

    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}");
                Console.WriteLine("Begins with uppercase? " +
                     $"{(input.StartsWithUpper() ? "Yes" : "No")}");
                Console.WriteLine();
                row += 4;
            } 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
    

    Le code utilise la variable row pour comptabiliser le nombre de lignes de données écrites dans la fenêtre de console. Chaque fois que ce nombre est supérieur ou égal à 25, le code efface la fenêtre de console et envoie un message à l’utilisateur.

    Le programme invite l’utilisateur à entrer une chaîne. Il indique si la chaîne commence par une majuscule. Si l’utilisateur appuie sur la touche Entrée sans entrer de chaîne, l’application et la fenêtre de console se ferment.

Ajouter une référence au projet

Initialement, le nouveau projet d’application console n’a pas accès à la bibliothèque de classes. Pour lui permettre d’appeler des méthodes dans la bibliothèque de classes, créez une référence de projet au projet de bibliothèque de classes.

  1. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le nœud Dépendances du projet ShowCase et sélectionnez Ajouter une référence de projet.

    Add reference context menu in Visual Studio

  2. Dans la boîte de dialogue Gestionnaire de références, sélectionnez le projet StringLibrary, puis sélectionnez OK.

    Reference Manager dialog with StringLibrary selected

Exécuter l’application

  1. Dans l’Explorateur de solutions, cliquez avec le bouton droit sur le projet ShowCase, puis sélectionnez Définir comme projet de démarrage dans le menu contextuel.

    Visual Studio project context menu to set startup project

  2. Appuyez sur Ctrl+F5 pour compiler et exécuter le programme sans débogage.

  3. Essayez le programme en entrant des chaînes et en appuyant sur Entrée, puis appuyez sur Entrée pour quitter.

    Console window with ShowCase running

Ressources supplémentaires

Étapes suivantes

Dans ce tutoriel, vous avez créé une bibliothèque de classes. Dans le tutoriel suivant, vous allez apprendre à tester unitairement la bibliothèque de classes.

Vous pouvez également ignorer les tests unitaires automatisés et apprendre à partager la bibliothèque en créant un package NuGet :

Vous pouvez également apprendre à publier une application console. Si vous publiez l’application console à partir de la solution que vous avez créée dans ce tutoriel, la bibliothèque de classes l’utilise en tant que fichier .dll.