Mi manca qualcosa e mi sento come se dovessi tornare alle basi ma according to the reference sources per ConcurrentDictionary in .Net 4.5 implementa l'interfaccia IReadOnlyDictionary (anche se alcuni membri sono esplicitamente), ma per qualche motivo non posso lanciare un'istanza per quello interfaccia - perché è così?Impossibile trasmettere .Net ConcurrentDictionary <K,V> all'interfaccia IReadOnlyDictionary <K,V>?
IDictionary<int, string> a = new ConcurrentDictionary<int, string>(); // works
IReadOnlyDictionary<int, string> b = new ConcurrentDictionary<int, string>(); // does not work
.. perché?
per rendere questo un po 'più chiaro:
Il codice sorgente a cui si fa riferimento è per .NET 4.6.1. –
Yacoub - Lo so, ma l'interfaccia (o almeno quella IReadOnlyDictionary) è già in 4.5.1 (che il progetto sta prendendo di mira) già .. il link è solo per riferimento .. Potrei anche collegarmi a MSDN ecc. –
Se si scarica il codice sorgente di .NET 4.5.1, si noterà che ConcurrentDictionary non implementa tale interfaccia –