Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Абасс... обсудите рахитекурту

21.05.24 15:27
Re: Абасс... обсудите рахитекурту
 
alex445 патриот
в ответ alex445 21.05.24 14:53, Последний раз изменено 21.05.24 15:33 (alex445)

Переписал с одним методом валидации так. С учётом, что мне надо в методе валидации обновить отвалидированное значение изменяемого свойства, используя при этом правильные свойства, с учётом уровня доступности полей (это я про "currentValue = ... // validate currentValue using MaxValue, currentValue"). Т.е. сам метод валидации ничего не возвращает, а все присваивания полям делает внутри себя.


public class Param
{
   double maxValue;
   public double MaxValue
   {
        get => maxValue;
        set
        {
            maxValue = value;
            Validate();
        }
   }
 
   protected virtual void Validate()
   {
        maxValue = ... // validate maxValue using maxValue
   }
}

public class ParamVolatile : Param
{
   double currentValue;
   public double CurrentValue
   {
        get => currentValue;
        set
        {
            currentValue = value;
            Validate();
        }
   }

   protected override void Validate()
   {
        base.Validate();
        currentValue = ... // validate currentValue using MaxValue, currentValue
   }
}
 

Перейти на