C# 8 – Utiliser le mot clé « using » pour déclarer des variables locales

En C#, le mot clé using est utilisé pour importer des espaces de nom. Il est aussi utilisé pour délimiter l’utilisation d’un objet dans un algorithme avec une libération anticipée de la mémoire, à condition que la classe instanciée pour créer cet objet implémente l’interface IDisposable. Voici un exemple :

using (StreamReader streamReader = new StreamReader(@"d:\Logs.txt", Encoding.ASCII))
{
    string contenuFichier = streamReader.ReadToEnd();
}

A partir de la version 8 du langage C#, le mot clé using peut aussi être utilisé pour déclarer un objet local, afin que cet objet soit libéré à la fin du bloc de code dans lequel il est utilisé. La classe instanciée pour créer cet objet doit aussi implémenter l’interface IDisposable. Voici un exemple :

public static string GetContenuFichier(string aPathFichier)
{
    using StreamReader streamReader = new StreamReader(aPathFichier, Encoding.ASCII);
    string contenuFichier = streamReader.ReadToEnd();

    // Bloc de code.

    return contenuFichier;
}

Ainsi, lors de l’exécution de bloc de code, lorsque l’accolade de fin de la fonction GetContenuFichier est « rencontrée », la méthode Dispose() est exécutée sur l’objet streamReader.

About: James RAVAILLE

Travaillant avec la plateforme Microsoft .NET depuis 2002, j’alterne les missions de formation et d’ingénierie avec cette plateforme. J’écris ce blog pour transmettre mes connaissances à tout développeur, qu’il soit débutant ou expérimenté.