Инициализатор поля не может ссылаться на нестатическое поле, метод или свойство

#blazor

#blazor

Вопрос:

Пытаюсь найти лучший способ выполнить базовую математику с помощью blazor. Я хочу ввести число, отобразить это число (currentValue ), а затем отобразить это число в два раза (newValue). Но я не могу понять, как ссылаться на первое число.

 @page "/Double"

<h3>Double</h3>

<p>
    <input @bind="currentValue" /> @currentValue <br />
    Value doubled: @newValue
</p>

@code {
    public string currentValue;
    public int newValue = Convert.ToDouble(currentValue) * 2;
}
  

Комментарии:

1. Я не знаком с Blazor, но нужны ли вам геттеры и сеттеры для ваших свойств? Например, общедоступная строка currentValue {get;set;}

Ответ №1:

измените = значение на => и используйте double

 @page "/Double"

<h3>Double</h3>

<p>
    <input @bind="currentValue" /> @currentValue <br />
    Value doubled: @newValue
</p>

@code {
    public string currentValue;
    public double newValue => Convert.ToDouble(currentValue) * 2;
}

  

Комментарии:

1. Обратите внимание, что newValue теперь больше не поле, а свойство, доступное только для чтения. Предпочтительное имя — newValue .