Rodrigo Sendin

.NET Framework, C#, ASP.NET, Visual Studio, WPF, Silverlight, Expression Blend, Arquitetura de Sistemas, Desenvolvimento de Software e afins.

segunda-feira, 9 de março de 2009

db4o (parte 6) – LINQ to db4o

Para finalizar esta sequencia de Posts sobre como realizar Queries no db4o, veremos como é possível utilizar a linguagem LINQ do .net para consultar dados em databases do db4o.

LINQ é a linguagem de queries integrada do .NET Framework, e o db40 também oferece compatibilidade com a linguagem LINQ. A vantagem do LINQ é a capacidade de criar queries em C# com as mesmas funcionalidades da linguagem SQL.

A primeira coisa que você precisa fazer é adicionar uma nova referencia ao seu projeto. Como neste exemplo estamos utilizando um projeto do tipo Console Application, basta adicionar uma referencia neste projeto, à DLL Db4objects.Db4o.dll como você confere na Figura abaixo.


Veja que essa DLL está no mesmo lugar que a Db4objects.Db4o.dll, e ela é que vai adicionar capacidade de criar queries LINQ no db4o.

Em seguida basta importar o namespace Db4objects.Db4o.Linq na classe Program.cs, e já estamos prontos para criar nossas queries com LINQ. Veja na Figura abaixo uma query que vai retornar todos os países com população acima de 1 milhão, e ordenada em ordem alfabética.


O resultado você vê na próxima figura.



Na minha opinião essa é a forma mais fácil e com maiores recursos que temos, para realizar queries no db4o. Além das capacidades de query, que são muito similares à linguagem SQL, com o LINQ temos a adição de uma série de métodos extendidos.

Veja, por exemplo, na Figura abaixo. Note que temos acesso à uma enorme quantidade de métodos da plataforma LINQ. Neste exemplo estamos utilizando o método Take, que funciona como um TOP, e neste caso irá limitar a nossa pesquisa à apenas os 5 primeiros registros encontrados.



Veja o resultado na próxima figura.


Deu pra notar que as possibilidades são muitas com o LINQ. Com isso somamos quatro possíveis formas de se executar queries no db4o: QBE, NQ, SODA e LINQ. Com todas essas possibilidades, dá pra notar que query é um ponto bem forte neste database.

Nos próximos POSTs pretendo falar de alguns assuntos mais avançados, e alguns exemplos práticos de como começar a utilizar o db4o em nossas aplicações. Grande abraço e até a próxima!

4 Comentários:

  • Às 23 de março de 2009 10:31 , Anonymous Rodrigo Sendin disse...

    Esta postagem foi removida pelo administrador do blog.

     
  • Às 27 de março de 2009 03:30 , Anonymous Anônimo disse...

    Muito obrigado por postar estes tutoriais sobre o Db4o. Muito didático.

    Grande abraço!

     
  • Às 9 de maio de 2009 13:49 , Blogger Rubens disse...

    shoow de bola o tutorial!
    Uma dúvida, o DB4o tem algum driver para uso com o NHibernate?...

     
  • Às 11 de maio de 2009 08:10 , Blogger Rodrigo Sendin disse...

    Olá Rubens!

    Eu acredito que não exista um driver para nHib (pelo menos eu ainda não achei).
    Se você quer uma aplicação onde possa configurar se o database é um SQLServer, Oracle ou db4o, a orientação do pessoal da db4objects é que você crie um DAO para abstrair as implementações db4o e NHib.
    Veja esta discussão sobre o assunto: http://developer.db4o.com/forums/thread/55031.aspx

    Valeu pelo feedback! Estou planejando novos POSTs sobre db4o.

    Abraço!

     

Postar um comentário

Links para esta postagem:

Criar um link

<< Início