Pergunta
Eu estou tentando gerar um modelo de camada de dados. Quando eu faço o meu Selects, atualizações e inserções, a idéia é ter o trabalho de modelo com todas as colunas, porque eu não sei qual de conter valores ou não. O problema é que eu posso ter um statemtent atualização como cmd.Parameters.AddWithValue ( "@ Campo", this.Field); e se esse valor for nulo, a consulta não será executado. Como posso contornar este problema?
UPDATE:
Eu tentei o ?? solução, mas eu recebo o Operador erro ?? não pode ser aplicada a seqüência de operandos (ou int) e System.DBNull. Parece para funcionar apenas se o campo é realmente nulo, mas não se tem um valor. Então eu tentei colocar o tipo (objeto) DBNull na frente de DBNull mas ainda nada.
Adicionando (objeto) a este campo funcionou!
Graças.
Solução
cmd.Parameters.AddWithValue("@Field", this.Field ?? DBNull.Value);
?? é a coalesce operador em C #.