1

Выдаёт вот такую ошибку:

Элемент модели, переданный в словарь, имеет тип "WebApplication3.Models.GuestResponse", но для этого словаря требуется элемент модели типа "System.Collections.Generic.IList`1[WebApplication3.Models.GuestResponse]".

@using WebApplication3.Models
@model IList<GuestResponse>

@{ Layout = null; }

<!DOCTYPE html>

<html> <head> <meta name="viewport" content="width=device-width" /> <title>Index</title> </head> <body>

<table class="table"> @if (Model != null) { for (var i = 0; i < Model.Count; i++) { <tr><td>@Model[i].Name</td><td>@Model[i].Email</td><td>@Model[i].Phone</td><td><img src="~/Files/@Model[i].Photo" /></td></tr> } } </table>

</body> </html>

В чём здесь может быть проблема?

  • В том, что Вы передаете в представление объект GuestResponse, а нужно IList<GuestResponse>. Как Вы вызываете в контроллере метод View? –  Jan 07 '19 at 21:52
  • Благодарю, осознал, передавал только один экземпляр класса, а не список, теперь всё всё заработало. – Андрей Jan 07 '19 at 22:59

1 Answers1

0

Проблема решилась, код контроллера теперь выглядит как-то так, в представлении ничего не менял

List<GuestResponse> Students;


    public ViewResult Index()
    {
        int hour = DateTime.Now.Hour;
        ViewBag.Greeting = hour < 12 ? "Доброе утро" : "Доброго дня";
        Students = new List<GuestResponse> {
            new GuestResponse {Name = "ahrtfhar", Email = "agrrarh", Phone = "agrrarh", Photo = "Stoned_Fox_.jpg" },
            new GuestResponse {Name = "strjtrr", Email = "ajtaj", Phone = "gluifat", Photo = "Stoned_Fox_.jpg" }
    };
        return View(Students);


    }