Pergunta

Todas as demos de Visual Studio LightSwitch Use SQL-Server, é possível acessar dados do Oracle usando o Visual Studio LightSwitch?

Foi útil?

Solução

O Visual Studio LightSwitch pode ser persistido em um banco de dados Oracle por meio da estrutura da entidade.

  1. Oracle Data Data Provider (ODP.NET)

    As ferramentas ODAC da Oracle contém o Oracle Data Provider (ODP.NET) para uso com aplicativos do Visual Studio. O mais recente driver da Oracle com a abordagem de suporte para Entity Framework 4.1 e "Model First".

    EDIT: Não tenho certeza se ele suporta "código-primeiro" ou EF 4.2, então verifique a documentação. Dito isto, É gratuito e apoiado pela Oracle, por isso sugiro fortemente começar aqui antes de rolar o seu próprio, ou usar provedores/drivers de código aberto.

    Faça o download do odp.net 11.2.0.3

    Tutorial EF com odp.net

    Notas: "11.2.0.2 Release 4" o cortará, mas "11.2.0.3 está" fora e mais estável.

  2. Motoristas de terceiros estão disponíveis para compra:

    DocConnect for Oracle

    Provedor ADO.NET de Devart para Oracle

  3. Provedores de código aberto

    Além disso, existem algumas opções de código aberto disponíveis - uma que encontrei no Github:

    https://github.com/object/northwindodata


Tutorial sobre MSDN: Como conectar o LightSwitch ao EF 4.1

Outras dicas

Sim, se você pode obter um fornecedor de terceiros para a estrutura da entidade. Na verdade, fiz essa pergunta na VSLive esta semana.

Eu usei o mais recente ODAC 11.2 Release 4 (11.2.0.3.0) que suporta a estrutura da entidade e funciona bem.

Se você receber este erro, "Mensagem de exceção interna: a conexão já faz parte de uma transação local ou distribuída"

Você pode resolver o problema seguindo o segundo post de Bscholz, https://forums.oracle.com/forums/thread.jspa?threadid=2263095

Basicamente, você precisa implementar SaveChanges_Excuting e SaveChanges_Excuted para a fonte de dados Oracle.

  1. Alterne para "Visualização do arquivo" (LightSwitch exibirá "Visualização lógica" por padrão).
  2. Adicione uma referência a "System.Transactions" no projeto do servidor.
  3. Volte para "Visualização lógica"
  4. Clique com o botão direito do mouse no nome da fonte de dados e clique em "Exibir código" para editar a classe parcial.
  5. Copie e cole o código abaixo:

    private TransactionScope _tscope;
    
    partial void SaveChanges_Executing()
    {
        _tscope = new TransactionScope(TransactionScopeOption.Required,
        new TransactionOptions
        {
            IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted
        });
    }
    
    partial void SaveChanges_Executed()
    {
        _tscope.Complete();
        _tscope.Dispose();
    }
    

o Kit de treinamento de LightSwitch Faz um exercício dedicado ao uso de fontes de dados alternativas por meio de serviços da WCF RIA.

Você pode achar isso útil.

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