ago 10 2008

Testando null em um campo ValueType no DataSet

  • Autor: admin em Programação
  • Sem Comentários. Seja o primeiro a comentar.
Variáveis do tipo ValueType no .NET não podem receber valores nulos. Entre elas estão incluidas variáveis numéricas e datetime.

Porém é natural que o banco de dados possua campos numéricos e datetime que aceitem nulo. Neste caso o dataset marcará os campos como aceitando DBNull.

O nulo do banco é um tipo especial no .NET, o tipo DBNull, que pode ser recuperado através de DBNull.Value

O problema é que você não pode comparar o campo do dataset com null (C#) com Nothing (VB.NET), usar a função IsNothing (VB.NET) ou usar a função IsDBNull, nada disso irá funcionar, pois dentro do get da propriedade selecionada ocorre um erro pelo fato do valueType ter valor nulo.

Para resolver este problema, quando um campo do dataset tem a opção definida para aceitar DBNull, o dataset selecionado cria uma propriedade para testar o nulo neste campo.

Por exemplo, se o campo se chama Data, é criada uma propriedade chamada isDataNull, que deve ser usada para testar se o campo data é nulo antes de ser feito um acesso direto ao campo data.

Por exemplo :

dim l as linharegistro
….

if l.isdatanull then

end if

C#

linharegistro l;

if (l.isDataNull)
{
….
}



DEIXE UM COMENTÁRIO

Subscrever

Subscreve o Blog



Publicidade

Comentários Recentes

  • shirley Balazs: Parabéns!! Informações de utilidade publica e de primeira, foi muito útil a mim.Obrigada!!
  • Jefferson Ferreira de brito: eu quero muito
  • thiago valente: Eu quero um para mim
  • Lucas martins balieiro: Eu não fiz o enem mesmo assim eu posso me inscrever no site essa é minha dúvida, só queme...
  • Francisca Marli Oliveira: quero saber quanto tenho no meu fgts

Links

Leitores Recentes

VALE O CLIQUE!

Site Seguro Ocioso

Divulgue o blog Infomaroto em seu site e tenha seu link ou banner aqui.
Blog Infomaroto