Que significa isso
Principalmente o set e o pipe com sinal de igual, n'ao entendi esse codigo.
public virtual int IDCATEGORIA
{
get { return _idcategoria; }
set { _isChanged |= (_idcategoria != value); _idcategoria = value; }
}
public virtual int IDCATEGORIA
{
get { return _idcategoria; }
set { _isChanged |= (_idcategoria != value); _idcategoria = value; }
}
Pjava
Curtidas 0
Respostas
Tiago
23/10/2012
Realmente bem confuso, mas pelo que eu entendi na linha abaixo, ele verifica se o valor que "mudou" não é igual a outro se não for o valor é setado.
set { _isChanged |= (_idcategoria != value); _idcategoria = value; }
set { _isChanged |= (_idcategoria != value); _idcategoria = value; }
GOSTEI 0
Moisés Gonçalves
23/10/2012
Realmente bem confuso, mas pelo que eu entendi na linha abaixo, ele verifica se o valor que "mudou" não é igual a outro se não for o valor é setado.
set { _isChanged |= (_idcategoria != value); _idcategoria = value; }
set { _isChanged |= (_idcategoria != value); _idcategoria = value; }
Com o perdão da palavra: não tem nada a ver.
O operador |= é conhecido como "OR assignment", ou "atribuição ou".
imagine o seguinte:
bool a = false;
bool b = true;
b |= a;
Equivale a escrever:
b = b | a;
Em outras palavras, b "é igual a" b ou a.
Trazendo para o caso de uso em questão, o field _isChanged será modificado antes que a categoria seja definida.
Neste caso, as expressões "categoria foi modificada" e "o identificador da categoria já existente é diferente do valor" serão testadas em com um operador "OU", o resultado desta operação de comparação resultará no valor final do field _isChanged.
_isChanged = _isChanged | (_idcategoria != value);
GOSTEI 0
Tiago
23/10/2012
Ah Moisés eu acabei confundindo mesmo, obrigado por consertar.
GOSTEI 0
Joel Rodrigues
23/10/2012
PJava, essa questão ficou clara? Podemos encerrar o tópico?
GOSTEI 0
Joel Rodrigues
23/10/2012
Considerando as respostas que foram dadas, bastante esclarecedoras, estou marcando este tópico como concluído.
Abraço a todos.
Abraço a todos.
GOSTEI 0