this accepted answerを試しましたが、最新バージョンのASP.NETコアでこれとは異なる処理が行われるようです。 、別の方法としてASP.NETコアのRazorで条件付き属性を設定する
<select class="form-control" asp-for="Status">
<option></option>
@foreach (var option in Enum.GetNames(typeof(StatusOptions))) {
<option value="@option" @{if (option == Model.Status) { <text>selected="true"</text> } }>@option</option>
}
</select>
を私はこれを試してみましたが、selected="selected"
を得たが、Visual Studioは私に@selected is not a valid value of attribute of 'selected'
その警告を与える:私はこのからまったくselected
の属性を持っていません。
<select class="form-control" asp-for="Status">
<option></option>
@foreach (var option in Enum.GetNames(typeof(StatusOptions))) {
bool selected = option == Model.Status;
<option value="@option" selected="@selected">@option</option>
}
</select>
私はそれを使用することができますが、警告を無視して、私が望むものを正確に表示しません。取得する方法はあります:
<option value="firstOption" selected>firstOption</option>
あなたは 'selected'プロパティを設定しません。タグヘルパーは、バインドするプロパティの値に基づいて行います。 - ' –