カミソリでモデルからいくつかのコードをループしようとしています。
TagGroups は、TagGroups (簡単) とそのタグ グループの別のタグのリストです。次に、このタグ グループからタグを選択した回答者がいて、その選択は回答者データ内に保存されます。
@foreach (var tagGroup in @Model.TagGroups)
{
<optgroup label="@tagGroup.Name">
@foreach (var tag in tagGroup.Tags)
{
var selectedTag = @Model.Respondent.Tags.Where(r => r.Id == (int)tag.Id);
if (selectedTag != null)
{
<option selected="selected">@tag.Name</option>
}
else
{
<option>@tag.Name</option>
}
}
</optgroup>
}
問題は、これがコンパイルエラーをスローすることですか? if selectedTag の前に「@」を追加しようとしましたが、コード ブロック内では @ は必要ありません。
出力を次のようにしたい:
<optgroup label="NFC NORTH">
<option selected="selected">Chicago Bears</option>
<option>Detroit Lions</option>
<option>Green Bay Packers</option>
<option>Minnesota Vikings</option>
</optgroup>