Você está na página 1de 3

O que são DataAnnotations?

Data Annotations é um namespace (System.ComponentModel.DataAnnotations) que


contém classes atributos que decoram propriedades de classes de dados. Traduzindo,
sempre que queremos realizar algum tipo de validação em um campo de formulário em
uma view, colocamos um atributo na respectiva propriedade da classe de dados para
dizer que tipo de validação o sistema deve realizar para aquele campo no formulário
dentro de uma view.

O namespace DataAnnotations usa duas formas de validação: validação no lado cliente


e no lado servidor. A vantagem da validação no lado do cliente é o ganho no
desempenho, já que não há tráfego de requisições HTTP para o servidor Web, o que
gera uma resposta quase instantânea na validação de dados nos controles HTML.

Como utilizar DataAnnotations para realizar validação de dados?

Para realizar a validação dos dados podemos usar os atributos DataAnnotations:

Required - Torna obrigatória a informação do valor para a propriedade ;

EmailAddress - Valida o email verificando se o formato é válido;

MinLength - Determina um tamanho mínimo que deve ser informado;

MaxLength - Determina um tamanho máximo que não deve ser ultrapassado;

Range - Define um intervalo de valores válidos;

Podemos personalizar as mensagens de erro a serem exibidas.

Para realizar a validação dos dados temos que fazer o seguinte:

Criar uma instância da classe a ser validada;

Usar o método TryValidateObject() da classe Validator;

Criar uma lista para tratar os erros usando o container ValidationResult para os
resultados da validação;

A classe Validator define uma classe auxiliar que pode ser usada para validar objetos,
propriedades e métodos quando ela está incluída em seus atributos ValidationAttribute
associados.

Podemos ainda pode criar nossos próprios atributos de validação. Para isso basta
estender da classe base ValidationAttribute e sobrescrever o método ValidationResult.
O que é o Entity Framework?

O Entity Framework é um conjunto de tecnologias no ADO.NET que dão suporte ao


desenvolvimento de aplicativos de software orientados a dados. Os arquitetos e
desenvolvedores de aplicativos orientados a dados lutam com a necessidade de realizar
dois objetivos muito diferentes. Precisam modelar as entidades, as relações e a lógica
dos problemas de negócios que estão solucionando e também precisam trabalhar com
os mecanismos de dados usados para armazenar e recuperar os dados. Os dados podem
se estender por vários sistemas de armazenamento, cada um com seus próprios
protocolos. Mesmo aplicativos que trabalhem com um único sistema de
armazenamento devem balancear os requisitos do sistema de armazenamento com os
requisitos de gravação eficiente e código de aplicativo que possa ser mantido.

O Entity Framework permite que desenvolvedores trabalhem com dados na forma de


propriedades e objetos específicos de domínio, como clientes e endereços de clientes,
sem se preocupar com as tabelas e colunas do banco de dados subjacente em que os
dados estão armazenados. Com o Entity Framework, os desenvolvedores podem
trabalhar em um nível mais alto de abstração ao lidar com dados e podem criar e manter
aplicativos orientados a dados com menos códigos do que em aplicativos tradicionais.
Como o Entity Framework é um componente do .NET Framework, seus aplicativos
podem ser executados em qualquer computador no qual o .NET Framework a partir da
versão 3.5 SP1 esteja instalado.

Há três maneiras de trabalhar com dados no Entity Framework: Database First, Model
First e Code First.

O Database First permite que você faça engenharia reversa de um modelo de um banco
de dados existente. O modelo é armazenado em um arquivo EDMX (extensão. edmx) e
pode ser exibido e editado no Designer da Estrutura de Entidades.

O Model First permite que você crie um novo modelo usando o Entity Framework
Designer e, em seguida, gere um esquema de banco de dados a partir do modelo. O
modelo é armazenado em um arquivo EDMX (extensão . edmx) e pode ser exibido e
editado no Entity Framework Designer.

O Code First é uma funcionalidade incluída na versão 4.1 do Entity Framework. Esse
novo recurso permite o mapeamento/persistência de classes POCO e geração de base
de dados a partir da estrutura dessas classes. Para desenvolvedores que desejam criar
seus modelos de classes sem utilizar uma estrutura pré-existente de um banco de dados
ou, que não deseja ter suas classes de negócio herdando de classes específicas do Entity
Framework, ou seja, criar classes POCO (Plain Old C# Objects) e utilizá-las.
O que são as Migrations?

O Migration é um recurso do Entity Framework Core que permite atualizar de forma


incremental o esquema do banco de dados para mantê-lo em sincronia com o modelo
de dados do aplicativo, preservando os dados existentes no banco de dados.

Ele permite que você crie, modifique ou exclua tabelas, colunas, índices, chaves e outros
elementos do banco de dados de forma organizada e segura.

Com esse recurso, você pode versionar o seu banco de dados e sincronizar as mudanças
entre diferentes ambientes (desenvolvimento, teste, produção, etc.). Além disso, a
solução facilita o trabalho em equipe, pois cada desenvolvedor pode aplicar as mesmas
alterações no seu banco de dados local sem conflitos ou inconsistências.

Você também pode gostar