Pergunta

Eu estou tentando descobrir o que é a melhor maneira de conectar um aplicativo ASP.Net (existente) para um banco de dados Oracle para ler suas informações de dicionário.

Há simplesmente demasiados possibilidades:

  • Provedor de MS de dados para Oracle (requer 8.1.7, namespace System.Data.OracleClient)
  • Oracle Data Provider para .NET (requer 9.2, namespace Oracle.DataAccess)
  • Provider Oracle para OLE DB
  • MSDASQL e ODBC

Como meu aplicativo atual usa servidor MSSQL, mais opções seria:

  • Linked Server, o acesso via server..user.object
  • Linked Server via OPENROWSET

Há um par de perguntas sobre temas semelhantes sobre SO, mas apenas alguns aceitaram respostas.

Qual é a sua experiência com cada um dos drivers? Quais são os seus prós e contras?

É claro que a Oracle está recomendando ODP.Net. É a exigência da versão 9.2 (ou superior) um problema hoje?

Foi útil?

Solução

Eu também recomendo ODP.NET. Escolha o mais recente provedor ( http://www.oracle.com/technology/ tecnologia / windows / odpnet / index.html ). Ele pode se conectar com um banco de dados Oracle 9.2 ou uma versão mais recente do banco de dados.

O Provedor de MS de dados para Oracle é muito limitado. Você não pode trabalhar com matrizes, por exemplo, e os tipos definidos pelo usuário. E por que a Microsoft fornecer um bom suporte para conexão com o Oracle?

Você também pode verificar o provedor de devart: http://www.devart.com/dotconnect / oracle / . Ele suporta a estrutura de entidade.

Outras dicas

Dump opções OLE DB e ODBC, se você tiver provedor de acesso direto aos dados, não há necessidade em usar OLE DB ou ODBC.

Eu recomendo Oracle Data Provider para .NET.

Microsoft acaba de anunciar que é depreciativo System.Data.OracleClient .

Eu acho que te deixa com algumas escolhas (pelo menos):

  • ODP.NET (livre, a partir de Oracle)
  • DevArt
  • DataDirect

DevArt também tem um LINQ para implementação do Oracle que poderia ser interessante para você.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top