dynamic & .NET Standard: come utilizzarli

Ho evitato l’uso dei dynamic per anni, ma poi alla fine ho ceduto alla tentazione durante le operazioni di inserimento massivo di dati su Azure (=vedi Azure Table Storage: inserimento massivo di dati ) e pensandoci bene sono davvero comode se pur pericolose.

Perché non compila?

Ricordate quando la scorsa settimana vi ho raccontato come migrare un progetto a .NET Standard? (=vedi Da .NET Core 2.0 a .NET Standard 2.0 in poche mosse ) Purtroppo non tutto esce gratis e qualche intoppo l’ho avuto. Non nego la mia prima esclamazione del tipo “ma prima funzionava tutto, perché ora non compila più?”. Guardando poi l’errore mi sono ricordato di avere usato proprio i dynamic e così ho provveduto alla soluzione.  Sappiate che non è così tragica la soluzione ed è di facile rimedio.

Per utilizzare il dynamic vi basterà aprire NuGet e scaricare i seguenti due pacchetti:

Microsoft.CSharp: Provides support for compilation and code generation, including dynamic, using the C# language.

PM> Install-Package Microsoft.CSharp -Version 4.5.0

System.Dynamic.Runtime: Provides classes and interfaces that support the Dynamic Language Runtime (DLR).

PM> Install-Package System.Dynamic.Runtime -Version 4.3.0

Come vedete non è per nulla difficile, quindi perché aspettare e rimandare l’uso dei dynamic? Se siete pigri e non avete voglia di scrivere i comandi a mano, vi ricordo che è possibile effettuare le stesse operazioni da interfaccia grafica.

ATTENZIONE: Il pacchetto “Microsoft.CSharp” ha come dipendenza “System.Dynamic.Runtime” e quindi bisogna installarli entrambe.

In chiusura vi segnalo questi link di contorno per completare l’articolo come riferimenti per maggiori informazioni: