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.


Comments (6)

  1. Mi spiace ma non concordo… OracleClient non è il MENO usato, assolutamente… tantissime applicazioni che tutti i giorni tocchiamo con mano da clienti lo usano egregiamente.

    ODP.NET per la nostra esperienza si è rivelato molto meno stabile di OracleClient.

    Insomma… decisione assolutamente non condivisibile con il Team. Perchè .NET non dovrebbe avere un provider nativo per Oracle e si deve per forza andare su prodotti di terze parti? Mah…

  2. PietroBr says:

    Ciao Stefano,

    capisco il tuo disapputo per l’annucio, anche se le applicazioni a cui tu fai riferimento comunque continueranno a funzionare e saranno compilabili con .NET 4( a parte un warning), quindi non avrai grossi problemi. ODP viene constantemente aggiornato alle ultime release e funzionalità, e l’uso di altri provider completamente scritti in .NET  potrebbe essere una soluzione a lungo termine da valutare per future versioni del DBMS o funzionalità avanzate o per maggore stabilità complessiva dell’applicazione.

  3. Roberto says:

    Ci risiamo….ogni tanto ‘mamma’ Microsoft taglia qualcosa……è un errore e secondo me anche grave. Non ho mai visto in casa sun smettere di aggiornare pezzi importanti del suo framework.

    Credo sia assolutamente sbagliato dire ‘tanto ci sono altri’ che forniscono la libreria…è sbagliato!!!

    Attenzione che cosi facendo le aziende non penseranno mai e poi mai di passare a .net……meglio java.

  4. PietroBr says:

    Grazie Robero, probabilmete le aziende sono in grado di valutare cosa sia megio per loro a breve e lungo termine.

  5. giorgio novello says:

    Una cosa è certa. Microsoft sta facendo il bello e cattivo tempo e non è possibile produrre software web a stand alone con una forte conoscenza dei sistemi in quanto cambia le tecnologie in modo confuso, risibile e discutibile. A volte cambia il nome alla stessa funzione!

    Io da ASP e  ASP.NET sto passando gradualmente a PHP, qui sto trovando un sistema che è più stabile e meglio supportato.

  6. Caro Giorgio,

    Io credo che il tuo commento non corrisponda alla realtà dei fatti. Microsoft cerca di innovare con continuità le proprie tecnologie e piattaforme con lo scopo di fornire a chi le utilizza sempre nuove possibilità . Un grosso sforzo viene fatto per illustrare le motivazioni dell’introduzione di nuove tecnologie o nell’eliminazione del supporto di quelle non più utilizzate e il processo di innovazione è sempre fatto ascoltando I feedback degli utilizzatori e mettendo a disposizione con largo anticipo le preview delle nuove funzionalità o le informazioni su ciò che viene eventualmente deprecato. Si può ovviamente non essere d’accordo con le novità che vengono introdotte o gli elementi eliminati, ma in quanto a garanzia di supporto e di continuità tecnologica, Microsoft pone un grande impegno.  Il core di .NET e ASP.NET, ad esempio, sono costruiti sulla base della prima versione e le nuove release  garantiscono la compatibilità anche alle applicazioni sviluppate con le precedenti versioni ed anche in quei casi in cui si procede dimettere una tecnologia viene comunque garantito il supporto per l’intero ciclo di vita previsto ed anche oltre .   Ad esempio ad oggi applicazioni sviluppate con Visual Basic  più di 13 anni fa continuano a funzionare sulle più recenti versioni di Windows nonostante .NET sia la tecnologia consigliata per costruire soluzioni applicative con la tecnologia Microsoft da oramai  quasi 10 anni.

Skip to main content