Элемент модели MVC 3 передан в словарь ошибки - PullRequest
0 голосов
/ 10 января 2012

Я получаю эту ошибку, и я не понимаю, почему: Элемент модели, передаваемый в словарь, имеет тип «Devart.Data.Linq.DataQuery`1 [CHRContext.WIKIIDEE]», но для этого словаря требуется элемент модели типа «CHRContext.WIKIREPARTO».

метод из модели

public IQueryable<WIKIIDEE> GetIdeasByDeptID(int id)
        {
            var query = from i in db.WIKIIDEEs
                        where i.IDREPARTO == id
                        select i;

            return query;
        }

метод от контроллера

public ActionResult List(int id)
    {
        try
        {
            IdeeRepository ideeRepo = new IdeeRepository();

            IQueryable<WIKIIDEE> list = ideeRepo.GetIdeasByDeptID(id);

            return View(list);
        }
        catch (Exception Ex)
        {
            return View("Error");
        }
    }

и просмотр

 @model IEnumerable<CHRContext.WIKIIDEE>

@{
    ViewBag.Title = "List";
    Layout = "~/Views/Shared/_Layout.cshtml";
}

<h2>List</h2>

<p>
    @Html.ActionLink("Create New", "Create")
</p>
<table>
    <tr>
        <th>
            IDREPARTO
        </th>
        <th>
            DATAINSERIMENTO
        </th>
        <th>
            DESCRIZIONE
        </th>
        <th></th>
    </tr>

@foreach (var item in Model) {
    <tr>
        <td>
            @Html.DisplayFor(modelItem => item.IDREPARTO)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.DATAINSERIMENTO)
        </td>
        <td>
            @Html.DisplayFor(modelItem => item.DESCRIZIONE)
        </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>
}

</table>

1 Ответ

0 голосов
/ 10 июня 2012

Я столкнулся с очень похожей проблемой и смог обойти ее.Вы можете увидеть, как здесь, в моем ответе: Элемент модели, передаваемый в словарь, относится к типу A, но для этого словаря требуется элемент модели типа B

...