Criei meus exemplos de tópicos de acesso a dados neste repositório. Tenho exemplos e projetos sobre temas como framework de entidade, data first, code first, Orm, criação de banco de dados.
É uma ferramenta que atua como ponte entre um banco de dados relacional e a programação orientada a objetos (OOP). Esta ponte é uma estrutura onde utilizamos nossos modelos de objetos para gerenciar nossas informações no banco de dados relacional. Resumindo, é um framework desenvolvido pela Microsoft que conecta nossos objetos ao banco de dados e troca dados para nós.
Ao usar consultas LINQ (Language Integrated Query) com a estrutura Entity, temos uma consulta poderosa sobre objetos. Os serviços fornecidos pela estrutura Entity são principalmente rastreamento de alterações, resolução de identidade e tradução de consultas.O principal objetivo da estrutura Entity é permitir que o desenvolvedor do aplicativo se concentre no lado do aplicativo sem estar muito ocupado com operações de dados. Como um exemplo muito simples, nós desenvolvedores somos inteiramente responsáveis por abrir e fechar uma conexão em aplicações ADO.NET clássicas. No entanto, ao usar a estrutura da entidade, você não interfere nessas operações. Você prepara sua consulta e a envia ao banco de dados por meio do framework de entidade.
O Entity Framework usa 3 métodos diferentes de desenvolvimento de projetos para isso.
Model First = Este método permite projetar o banco de dados neste modelo adicionando um arquivo de modelo vazio (.edmx) no Visual Studio. O arquivo de script fornecido na etapa de compilação cria o banco de dados.
Banco de dados primeiro = Nessa direção, nossas classes necessárias são criadas pelo Entity Framework conectando o banco de dados criado anteriormente ao projeto como modelo.
Nesta pasta, mostrei primeiro meus exemplos de banco de dados. Páginas do GitHub.
Code First = Este método é um método que executamos ao começar a criar nossas classes no ambiente do visual studio. Nosso banco de dados é derivado dessas classes. Aqui, as operações de mapeamento podem ser feitas pelo desenvolvedor graças aos Atributos durante a criação de classes. Aliás, o processo de Mapeamento é o evento onde definimos nossas restrições em nossas tabelas. Além dos atributos, podemos realizar essas operações de diversas maneiras. Por exemplo, ferramentas como Fluent Api ou Fluent Validation são popularmente usadas para operações de mapeamento.
Utilizando a biblioteca do Entity Framework, podemos filtrar os dados fazendo consultas em uma tabela do nosso banco de dados. Quase todas as consultas que você pode fazer no T-SQL podem ser feitas com o Entity Framework.
Aqui mostrei as operações básicas de seleção. Páginas do GitHub.
Você também pode usar as funções integradas de consultas e relatórios T-SQL com a biblioteca Entity Framework.
Aqui mostrei nossas funções agregadas básicas. Páginas do GitHub.
Na estrutura Code First, as estruturas de "classe" na linguagem de programação correspondem às estruturas de "tabela" no banco de dados, e as estruturas de "propriedade" correspondem às estruturas de "coluna" no banco de dados. As validações podem ser aplicadas a estruturas de banco de dados e certas condições ou restrições podem ser colocadas em colunas. O mais importante é que permite sentir o controle automático do modelo em seu projeto e usá-lo como desejar com controle total.
Você pode ver meu exemplo sobre o assunto aqui. Páginas do GitHub.
Eu criei um banco de dados vir que você pode usar aqui.
Você pode conferir aqui. Páginas do GitHub.
É uma estrutura que torna nossos projetos de Arquitetura em Camadas mais organizados, aumenta a legibilidade do código, aumenta o trabalho em equipe e facilita o gerenciamento de erros. Na verdade, com essa estrutura, tornamos a redação de projetos um padrão. Como esta estrutura consiste em 3 camadas principais, hoje ela pode ser chamada de estrutura de arquitetura multicamadas. Mas na verdade depende de 3 camadas principais. Essas camadas são;
-- Camada de Dados -- Camada de Negócios -- Camada de Apresentação
Aqui criei minhas entidades correspondentes ao meu banco de dados.Páginas do GitHub.
Aqui criei minha camada de infraestrutura.Páginas do GitHub.
Criei minha UI aqui.Páginas do GitHub.
Dapper é uma ferramenta micro ORM desenvolvida pela Stackoverflow que oferece suporte a muitos bancos de dados. Como as ferramentas orm fazem muitas coisas sozinhas, isso faz com que elas fiquem um pouco lentas. Não é preferido especialmente em portos com tráfego intenso. Dapper pode ser preferido nesses casos. É uma única "dll". Então, o que é uma interface para mapeamento? Também não precisa de nenhum arquivo de configuração. Resumindo, é simples e rápido. Lançado como código aberto no Github e continua a ser desenvolvido.
--A característica mais importante do Dapper é seu desempenho muito bom. Na maioria das vezes, é preferido por causa dessa vantagem.
--Você pode executar facilmente suas consultas e vincular o resultado retornado a um objeto facilmente.
--A desvantagem mais importante é que, como as consultas são escritas em linha, elas estão bastante sujeitas a erros. Deve-se prestar atenção a isso. Pior ainda, esses erros ocorrem em tempo de execução, não em tempo de construção.
--No Dapper, fazemos a maioria das coisas. O desenvolvedor tem que fazer o banco de dados, nossas consultas, nossos ativos do lado do programa e o status dos objetos. Isto aumenta muito os custos de desenvolvimento e manutenção durante as fases de desenvolvimento de grandes projetos.
Tentei usar 2 métodos neste repositório. Trabalhei com meus procedimentos em Sql em um repositório e em meu outro repositório escrevendo minhas consultas diretamente no programa.
-- Primeiro criei o banco de dados em SQL.
-- Depois, adaptei meus procedimentos aos métodos que utilizarei em meu programa. Você pode olhar daqui. Páginas do GitHub
--No meu programa também criei minhas camadas e assets, meus repositórios que utilizarei com meus procedimentos. O importante aqui é passar meus procedimentos e os parâmetros que vou usar nele corretamente. Caso contrário, teremos muitos erros. Você pode olhar daqui. Páginas do GitHub
-- Criei a conexão com o banco de dados com "conexão". Você pode olhar daqui. Páginas do GitHub
- Criei minha interface de usuário mais recente e executei as ações desejadas. Você pode olhar daqui. Páginas do GitHub
Aqui escrevi minhas consultas que irão executar a operação que desejo diretamente no Sql. É realmente necessário ter muito cuidado ao escrever as consultas aqui. Um erro pode desperdiçar muito tempo. Quanto aos parâmetros, os valores correspondentes dos parâmetros na consulta devem estar corretos. Mas para mim, as exceções são bastante autoexplicativas no Dapper. É realmente útil encontrar falhas facilmente.
Você pode olhar daqui. Páginas do GitHub
Aqui, mostrei minhas ações na interface do usuário.
Você pode olhar daqui. Páginas do GitHub