Измените свой код следующим образом:
A : удалите строку @if (item.Comments == null)
и заставьте view
отобразить раздел создания по умолчанию.
B : Для создания / редактирования комментариев, ваш код должен выглядеть примерно так:
<div class="form-inline comments">
<textarea class="form-control commentText" placeholder="Enter Your Comment"></textarea>
<button type="submit" data-cid="@item.RoomId" class="btn btn-primary save"><i class="fas fa-save h3"></i></button>
</div>
C : а затем добавить проверку области в список как:
@if(item.Comments!=null)
{
<display your list here>
}
Для отображения comments
вместо статического отображения comments
используйте таблицу и выполните цикл foreach
для комментариев в таблице, чтобы создать строки с двумя столбцами в ней как Comment
, Edit
,
Пример:
<table>
@foreach(var comment in item.Comments)
{
<tr>
<td>@comment.Text</td>
<td><button data-id="@comment.RoomId">Edit</button></td>
</tr>
}
</table>
и при нажатии кнопки Редактировать вызовите функцию javascript, которая вызовет получение этого комментария и заполнит поля редактирования, после чего вы сможете позже использовать его для обновления.
Ваш взгляд будет выглядеть примерно так:
<div class="form-inline comments">
<textarea class="form-control commentText" placeholder="Enter Your Comment"></textarea>
<button type="submit" data-cid="@item.RoomId" class="btn btn-primary save"><i class="fas fa-save h3"></i></button>
</div>
@if(item.Comments!=null)
{
<table>
@foreach(var comment in item.Comments)
{
<tr>
<td>@comment.Text</td>
<td><button data-id="@comment.RoomId">Edit</button></td>
</tr>
}
</table>
}
Rest : реализовать функцию JS для получения и создания комментариев.