Como: Adicione a validação às classes de entidade
Validar classes de entidade é o processo que confirma que os valores inseridos em objetos de dados estão de acordo com as restrições do esquema de um objeto, e também as regras estabelecidas para o aplicativo. Validar dados antes de enviar atualizações para o base de dados subjacente é uma boa prática que reduz erros. Também reduz o número potencial de processamentos entre um aplicativo e o base de dados.
Designer Relacional de Objetos fornece os métodos parciais que permitem aos usuários para estender o código gerado por que executa durante, inserções, atualizações e exclusões de entidades completos, e também durante e após a coluna individual é alterada.
Dica
Este tópico fornece as etapas básicas para adicionar validação a classes de entidade usando Designer Relacional de Objetos.Como pode ser difícil seguir essas etapas genéricos sem se referir a uma classe específica de entidade, um explicação passo a passo que os dados reais dos usos são fornecidos.Para instruções passo a passo detalhadas para configurar a validação usando Designer Relacional de Objetos, consulte Passo a passo: Adicionando a validação às classes de entidade.
Adicionar validação para alterações ao valor em uma coluna específica
Este procedimento mostra como validar dados quando o valor em uma coluna é alterado. Porque a validação é executada dentro da definição de classe (em vez de na interface do usuário) será lançada uma exceção se o valor faz com que a validação falhar. Implementar manipulação de erro para o código em seu aplicativo que tenta alterar os valores de coluna.
Dica
Seu computador pode mostrar nomes ou locais diferentes para alguns dos elementos da interface do usuário do Visual Studio nas instruções a seguir. A edição do Visual Studio que você possui e as configurações que você usa determinam esses elementos. Para obter mais informações, consulte Personalizando configurações de desenvolvimento no Visual Studio.
Para validar dados durante o valor de uma coluna alterar
Abra ou crie novas classes LINQ to SQL arquivo (arquivo de**.dbml** ) em Designer Relacional de Objetos. (Clique duas vezes no arquivo de**.dbml** em Gerenciador de Soluções.)
Em object relational Designer de Objetos, clique com o botão direito do mouse na classe para qual você deseja adicionar validação e clique em Exibir Código.
O editor de códigos abre com uma classe parcial para a classe de entidade selecionada.
Coloque o cursor na classe parcial.
Para projetos do Visual Basic:
Expanda a lista de Nome do Método .
Localize o naCOLUMNNAMEChanging método para a coluna que você deseja adicionar validação para.
Um OnCOLUMNNAMEChanging método é adicionado à classe parcial.
Adicione o seguinte código para primeiro verificar que um valor está inserido e para garantir em que o valor inserido para a coluna é aceitável para seu aplicativo. O argumento de value contém o valor proposto, para adicionar a lógica para confirmar que é um valor válido:
If value.HasValue Then ' Add code to ensure that the value is acceptable. ' If value < 1 Then ' Throw New Exception("Invalid data!") ' End If End If
Para projetos C#:
Porque os projetos C# não gerenciar automaticamente os manipuladores de eventos, você pode usar o IntelliSense para criar métodos parciais de alteração.
Tipo partial e um espaço para acessar a lista de métodos parciais disponíveis. Clique no método de alteração para a coluna que você deseja adicionar validação para. O seguinte código lembra o código que é gerado quando você seleciona um método parcial de alterar:
partial void OnCOLUMNNAMEChanging(COLUMNDATATYPE value) { throw new System.NotImplementedException(); }
Adicionar validação para atualizações para uma classe de entidade
Além de verificar valores alterações pendentes, você também pode validar dados quando é feita uma tentativa de atualizar uma classe completa de entidade. A validação durante uma atualização tentada permite que você comparar valores em várias colunas se as regras comerciais exigem esta. O procedimento a seguir mostra como validar quando é feita uma tentativa de atualizar uma classe completa de entidade.
Dica
O código de validação para que as atualizações terminem classes de entidade é executado na classe parcial de DataContext (em vez de na classe parcial de uma classe específica de entidade).
Para validar dados durante uma atualização para uma entidade
Abra ou crie novas classes LINQ to SQL arquivo (arquivo de**.dbml** ) em Designer Relacional de Objetos. (Clique duas vezes no arquivo de**.dbml** em Gerenciador de Soluções.)
Clique com o botão direito do mouse em uma área vazia em object relational Designer de Objetos e clique Exibir Código.
O editor de códigos abre com uma classe parcial para DataContext.
Coloque o cursor na classe parcial para DataContext.
Para projetos do Visual Basic:
Expanda a lista de Nome do Método .
Clique em atualizaçãoENTITYCLASSNAME.
Um UpdateENTITYCLASSNAME método é adicionado à classe parcial.
Acessar valores de colunas individuais usando o argumento de instance , conforme mostrado no código o seguir:
If (instance.COLUMNNAME = x) And (instance.COLUMNNAME = y) Then Dim ErrorMessage As String = "Invalid data!" Throw New Exception(ErrorMessage) End If
Para projetos C#:
Como projetos c# não gerenciar automaticamente os manipuladores de eventos, você pode usar o IntelliSense para criar parcial UpdateCLASSNAME método.
Tipo partial e um espaço para acessar a lista de métodos parciais disponíveis. Clique no método de atualização para a classe que você deseja adicionar validação para. O seguinte código lembra o código que é gerado quando você seleciona um UpdateCLASSNAME método parcial:
partial void UpdateCLASSNAME(CLASSNAME instance) { if ((instance.COLUMNNAME == x) && (instance.COLUMNNAME = y)) { string ErrorMessage = "Invalid data!"; throw new System.Exception(ErrorMessage); } }