Как правильно переопределить значение наследуемого свойства по умолчанию? - PullRequest
0 голосов
/ 20 марта 2020

У меня есть два класса, один наследует от другого, и я хочу переопределить значение по умолчанию из родительского класса в дочернем классе.

Это правильный способ сделать это?

public class Foo 
{
    public virtual string FooValue { get; set; } = "foo default value";
}

public class Bar : Foo 
{
    private string _fooValue = "bar default value";
    public override string FooValue 
    {
        get => _fooValue;
        set => _fooValue = value;
    }
}

Я видел людей, использующих атрибут DefaultValue, но не уверен, что это правильный путь.

1 Ответ

5 голосов
/ 20 марта 2020

Установите его в конструкторе Bar, виртуальные не нужны:

public class Bar : Foo 
{
    public Bar() {
        FooValue = "bar default value";
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...