System.Data.OracleClient – Qualche riflessione e suggerimento

Nei giorni scorsi, il team di ADO.NET ha reso noto che l’uso del provider per Oracle incluso in .NET sarà da considerarsi deprecato per la prossima versione del Framework, .NET 4.

Impatto per le applicazioni esistenti che usano OracleClient

Come si legge dal post, dove trovate altri dettagli, le applicazioni esistenti semplicemente continuerranno a funzionare anche con la prossima versione di .NET. Quello che succederà è che il provider non verrà aggiornato alle future versioni del DBMS, quindi potrà funzionare con alcune nuove versioni del DBMS Oracle, ma non sfrutterà comunque nuove funzionalità eventualmente presenti.

Perchè questa decisione ?

Il provider per Oracle di Microsoft non è l’unica soluzione per l’accesso ad Oracle da .NET ed è tra i meno usati oggi dagli sviluppatori, infatti esistono provider di terze parti sia gratuiti che a pagamento che offrono un maggiore supporto alle funzionalità offerte dalle diverse versioni del DBMS di Oracle. L’OracleClient è, tra i provider,  quello che offre il minor supporto in termini di funzionalità offerte da Oracle.

Come orientarsi

Oltre al provider Microsoft sono famosi due altri provider per Oracle usabili da .NET:

  1. ODP.NET della Oracle, gratuito, che viene costantemente aggiornato in termini di funzionalità offerte dal DBMS.
  2. Oracle Provider della DataDirect , con regolare supporto a pagamento dalla casa produttrice e che non richiede per l’utilizzo neanche l’installazione di librerie client sulla macchina.

Quindi potreste, cominciare a leggere

  1. Funzionalità oggi offerte dall’ OracleClient di Micriosoft al seguente link
  2. ODP.NET: funzionalità
  3. Data Direct’s Oracle Provider: funzionalità.
  4. Confronto tra ODP.NET e Data Direct’s Oracle Provider.

Sono sicuro che la lista dei link non sia esaustiva, ma possa essere uno spunto per iniziare a valutare quale soluzione sia meglio per la vostra realtà, in base a diversi parametri: a pagamento o meno, funzionalità del DBMS supportato, componenti richiesti per l’installazione sulle macchine, etc.