Articles

Affichage des articles associés au libellé C#

C# Version 10

  C# 10 C# 10 ajoute les fonctionnalités et améliorations suivantes au langage C# : Structures d’enregistrement Améliorations des types de structure Gestionnaires de chaînes interpolées Déclaration d’espace de noms de portée de fichier Modèles de propriété étendus Améliorations des expressions lambda Autoriser  les chaînes interpolées Les types d’enregistrements peuvent sceller Assignation définie améliorée Autoriser l’assignation et la déclaration dans la même déconstruction Autoriser  l’attribut sur les méthodes Attribut CallerArgumentExpression Pragma amélioré C# 10 est pris en charge sur  .net 6 . Pour plus d’informations, consultez contrôle de  version du langage C# .

C# Version 11

  C# 11 Littéraux de chaîne bruts Les  littéraux de chaîne brute  constituent un nouveau format pour les littéraux de chaîne. Ils peuvent contenir du texte arbitraire, y compris des espaces blancs, de nouvelles lignes, des guillemets incorporés et d’autres caractères spéciaux, sans nécessiter de séquences d’échappement. Un littéral de chaîne brute commence par au moins trois caractères guillemets doubles ("""). Il se termine par le même nombre de guillemets doubles. En règle générale, il utilise trois guillemets doubles sur une seule ligne pour démarrer la chaîne, et trois guillemets doubles sur une ligne distincte pour la terminer. Les nouvelles lignes qui suivent le guillemet d’ouverture et qui précèdent le guillemet de clôture ne sont pas incluses dans le contenu final : string longMessage = """ This is a long message. It has several lines. Some are indented more than others. Some should start at the first colum...

C# Version 12

 C# 12 C# 12 intègre les nouvelles fonctionnalités suivantes. Vous pouvez essayer ces fonctionnalités à l’aide de la dernière version de  Visual Studio 2022  ou du  Kit de développement logiciel (SDK) .NET 8 . Constructeurs principaux Vous pouvez désormais créer des constructeurs principaux dans n’importe quel class et struct. Les constructeurs principaux ne sont plus limités aux types record. Les paramètres de constructeur principal se trouvent dans l’étendue de l’ensemble du corps de la classe. Pour garantir l’affectation définitive de tous les paramètres de constructeur principal, tous les constructeurs explicitement déclarés doivent appeler le constructeur principal à l’aide de la syntaxe this(). L’ajout d’un constructeur principal à class empêche le compilateur de déclarer un constructeur sans paramètre implicite. Dans struct, le constructeur sans paramètre implicite initialise tous les champs, notamment les paramètres de constructeur principal selon le modèle 0...

Programmation Asynchrone .NET C#

Fonctionnement Asynchrone Introduit dans le Framework 4 async & await <code> public partial class MainWindow : Window { public MainWindow() { InitializeComponent(); } private async void buttonDownload_Click(object sender, RoutedEventArgs e) { var client = new WebClient(); var result = await client.DownloadStringTaskAsync(new Uri(textboxURL.Text)); textboxResult.Text = result; } } </code> Le mot clé async indique que la méthode est asynchrone. Cela permet d'identifier les méthodes qui pourraient être longues en termes d'exécution et donc qu'il serait préférable d'utiliser de manière asynchrone. L'utilisation du mot clé async dans une méthode suppose que le mot clé await est utilisé au moins une fois dans son implémentation (si ce n'était pas le cas, vous obtiendriez un Warning). Ce mot clé est appliqué sur une tâche (Task ou Task<TResult>) et permet de suspendre l'exécution d'une méthode asynchrone jusqu'à la fin de l'exé...

Versions du Langage C#

C# 6 Initialiseurs de propriétés automatiques et propriétés automatiques en lecture seule Imports statiques Membres dont le corps est une expression Initialiseurs de dictionnaires et de membres indexés await dans les blocs catch et finally Filtres d'exception Interpolation de chaînes C# 8 C# 8,0 ajoute les fonctionnalités et améliorations suivantes au langage C# : Membres ReadOnly Méthodes d’interface par défaut Améliorations des critères spéciaux : Expressions de commutateur Modèles de propriétés Modèles de tuples Modèles positionnels Utilisation des déclarations Fonctions locales statiques Structs ref jetables Types références Nullables Flux asynchrones Supprimable asynchrone Index et plages Assignation de fusion Null Types construits non managés Stackalloc dans les expressions imbriquées Amélioration des chaînes textuelles interpolées C# 9 C# 9,0 ajoute les fonctionnalités et améliorations suivantes au langage C# : Documents Setter init uniquement Instructions de nive...