Добрый день.
У меня возник такой вопрос. Допустим, в методе set некоторого свойства ссылочного типа я хочу наложить определенные ограничения на входящие значения value, например:
class MyRefClass
{
public int SomeNumber;
}
class MyTestClass
{
private MyRefClass _myRefClass;
public MyRefClass MyProperty
{
get
{
return _myRefClass;
}
set
{
if (value.SomeNumber < 0)
{
throw new SomeException();
}
_myRefClass = value;
}
}
}
Но, получив текущее значение с помощью get, я могу изменить состояние свойства, минуя set и, соотвественно, заложенную в него логику.
Как поступать в таких ситуациях? Может в set необходимо value проверять только на null?