quarta-feira, 28 de setembro de 2011

Propriedade desobediente

Essa foi um colega.

Ele tinha o seguinte código:

Objeto.Filho.Propriedade = Valor;

O problema é que Propriedade, depois da atribuição, continuava nula (e Valor não era nulo).

O que estava acontecendo é que, em Objeto, tinha este código:

Filho {
        get {
                if (ID == null)
                        return null;
                else
                        return new Filho { ID = ID } ;
        }
}

Não entendeu?

Toda vez que eu pego o Filho, mesmo sendo para setar Propriedade, ele passa por dentro do código do get. Logo, a propriedade é setada, mas, logo em seguida, o Filho é setado para outro objeto, que tem Propriedade nula.

Fala a verdade, essa é para ficar horas caçando. E ficar muito puto quando encontrar.

Nenhum comentário:

Postar um comentário