Classificazione documenti in C# senza AI: approccio deterministico, spiegabile e pronto per la produzione
Come implementare un classificatore di documenti .docx in C# .NET senza AI: approccio rule-based ponderato con configurazione JSON, estrazione strutturata e confidence score. Ideale per sistemi enterprise che...
Azure Developer CLI: scrivere gli hook in Python, TypeScript e .NET
Con l'aggiornamento più recente, Azure Developer CLI (azd) supporta hook scritti in Python, JavaScript, TypeScript e .NET. Scopriamo come configurarli in azure.yaml con gestione automatica delle dipendenze.
Primary Constructor e Dependency Injection in C# 12: vantaggi, insidie e quando usarli
I primary constructors di C# 12 eliminano il boilerplate del costruttore classico con dependency injection, ma nascondono un'insidia sulla mutabilità che ogni sviluppatore .NET dovrebbe conoscere prima di...
RAG in .NET con Semantic Kernel: le insidie che i tutorial non ti dicono
Costruire un sistema RAG in produzione con .NET e Semantic Kernel va ben oltre i tutorial: chunking con overlap, soglie calibrate, caching semantico e osservabilità sono le vere...
Command Pattern in C#: guida completa con undo, redo e Dependency Injection
Come implementare il Command Pattern in C# passo dopo passo: ICommand, Receiver, Invoker con stack undo/redo, Macro Commands e integrazione con Dependency Injection in ASP.NET Core.
Confronto tra stringhe in C#: Equals, OrdinalIgnoreCase, StringComparer e le insidie culturali
Guida pratica al confronto tra stringhe in C#: quando usare OrdinalIgnoreCase, come evitare il bug della 'i' turca, come usare StringComparer con dizionari e set, e confronti ad...