Viewのファイルを操作するにあたり、困ったことがあった。
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.Name)
</td>
<td>
@Html.DisplayFor(modelItem => item.Password)
</td>
<td>
@Html.DisplayFor(modelItem => item.done)
</td>
<td>
@Html.ActionLink("Edit", "Edit", new { id=item.Id }) |
@Html.ActionLink("Details", "Details", new { id=item.Id }) |
@Html.ActionLink("Delete", "Delete", new { id=item.Id })
</td>
</tr>
}
という構文があったときに、item.doneはbool型の値なので、
trueの場合は、済
falseの場合は、未
を表示したい場合、<td>
タグの中を<div>
などのhtmlタグで囲まずに使う方法が分からなかったので調べてみた。
方法は2つ。
文字列を<text>
タグで囲む
<td>
@if(item.done){
<text>済</text>
} else {
<text>未</text>
}
</td>
文字の前に「@:」をつける
<td>
@if(item.done){
@:済
} else {
@:未
}
</td>
参考記事