Blazor InputSelect绑定到选项文本而不是值

Blazor InputSelect绑定到选项文本而不是值,blazor,blazor-server-side,Blazor,Blazor Server Side,我使用Blazor服务器端,我有: <InputSelect class="form-control" id="sYear" @bind-Value="@SelectedYear"> <option value="" selected="@(SelectedYear == "")">Year</option> @foreach (int i in Enumerable.Range(admin.GetYearOfGregorianDate(Dat

我使用Blazor服务器端,我有:

<InputSelect class="form-control" id="sYear" @bind-Value="@SelectedYear">
    <option value="" selected="@(SelectedYear == "")">Year</option>
    @foreach (int i in Enumerable.Range(admin.GetYearOfGregorianDate(DateTime.Now) - 20, 21).Reverse())
    {
        <option value="@i" selected="@(SelectedYear == i.ToString())">@i.ToString()</option>
    }
</InputSelect>

年
@foreach(Enumerable.Range(admin.GetYearOfGregorianDate(DateTime.Now)-20,21.Reverse()中的int i)
{
@i、 ToString()
}
如图所示,第一个选项的值为空,我希望当我选择第一个选项时,绑定值变为空字符串,而不是字符串“Year”,但SelectedYear设置为“Year”!
如何解决此问题?

只需删除所选标记即可? 为什么要使用选定的标记? 默认情况下,SelectedYear的值绑定到选项值

<InputSelect class="form-control" id="sYear" @bind-Value="@SelectedYear">
    <option value="">Year</option>
    @foreach (int i in Enumerable.Range(admin.GetYearOfGregorianDate(DateTime.Now) - 20, 21).Reverse())
    {
        <option value="@i">@i.ToString()</option>
    }
</InputSelect>

年
@foreach(Enumerable.Range(admin.GetYearOfGregorianDate(DateTime.Now)-20,21.Reverse()中的int i)
{
@i、 ToString()
}