C#14, .NET 10 et EF Core 10
Ce qui va changer notre quotidien
Microsoft vient de sortir sa mise à jour annuelle. Le trio habituel C#14, .NET 10, EF Core 10, mais cette fois avec des fonctionnalités qu'on attendait vraiment. Certaines vont directement impacter notre façon de coder chez FTEL.
Petit spoiler : on a enfin des vrais LeftJoin dans EF Core.
Pour les curieux, cet article couvre ce qui nous intéresse. La documentation complète est ici
C#14 : un langage plus expressif
Extension Members - La grosse nouveauté
On connait tous les méthodes d'extension. On en utilise beaucoup dans nos projets. Mais devoir mettre des paranthéses sur IsEmpty( ) alors que cela devrait être une propriété, c'est dommage.
C#14 règle ça. On peut maintenant créer des propriétés d'extension, des méthodes statiques d'extension, et même des opérateur.
Notre code actuel :

Avec C#14 :

Ce que ça change pour nous : nos collections métiers vont pouvoir exposer des APIs aussi propres que les types natifs. Moins de parenthèses, plus de lisibilité, des codes reviews plus fluides.
Null-conditional assignment : ?. =
L'opérateur ?. fonctionne maintenant à gauche du =

Point important : si client est nul, le côté droit n'est jamais évalué. Utile quand l'expression à droite fait un appel coûteux.
.NET 10 : WebSocketStream simplifie le temps réel
Les WebSockets sont incontournables pour le temps réel, mais l'API classique demande beaucoup de boilerplate. WebSocketStream encapsule tout ça dans une API Stream standard.

Cas d'usage :
- Notifications temps réel (alertes, mise à jour de statut)
- Streaming de réponses IA (intégration LLM)
- Dashboards live avec métriques.
EF Core 10 : Les requêtes qu'on attendait
LeftJoin et RightJoin - Enfin disponibles
La syntaxe GroupJoin (). SelectMany (). DefaultIfEmpty () pour faire un LEFT Join était complexe, source d'erreurs, et difficile à expliquer. C'est terminé.

Impact concret : les requêtes complexes deviennent lisibles, l'onboarding est facilité, les codes reviews sont plus rapides.
Type JSON natif (SQL Server 2025 / Azure SQL)
SQL Server dispose maintenant d'un vrai type JSON natif - pas du nvarchar(max) déguisé, mais un type avec validation et fonctions optimisées.
Avantages :
- Meilleures performances sur les requêtes JSON
- Stockage optimisé
- Validation côté base de données
Hybrid Search pour l'IA (Cosmos DB)
Pour les projets utilisant Cosmos DB avec des embeddings, EF Core 10 supporte la recherche hybride combinant recherche vectorielle (similarité sémantique) et recherche full-text (mots-clés classiques).
Autres améliorations
- Noms de contraintes personnalisés : possibilité de nommer explicitement les contraintes par défaut
- Meilleure gestions des Contains () : le SQL généré est maintenant stable, ce qui améliore le plan caching
Récapitulatif
Extension Members : APIs plus expressives
- Action recommandée : adopter sur nos helpers existants
LeftJoin / RightJoin : Requêtes lisibles
- Refactorer les GroupJoin existants
JSON natif : Performances et typage
- Disponible avec SQL Server 2025
WebSocketStream : Temps réel simplifié
- Pour les nouveaux projets temps réel
Hybrid Search : Recherche vectorielle + texte
- Projets Cosmos DB + IA
L'équipe FTEL
