The model item passed into the dictionary is of type 'System.Collections.Generic.Lis
Calling Index view is giving me this very very annoying error . Can anybody tell me what to do about it
Error:
The model item passed into the dictionary is of type 'System.Collections.Generic.List1[MvcApplication13.Models.Groups]', but this dictionary requires a model item of type 'MvcApplication13.Helpers.PaginatedList
1[MvcApplication13.Models.Groups]'.
public ActionResult Index(int? page) { const int pageSize = 10; var group =from p in _db.Groups orderby p.int_GroupId select p;
var paginatedGroup = group.Skip((page ?? 0) * pageSize).Take(pageSize).ToList();
return View(paginatedGroup);
}
View:
>" %>Index
<h2>Index</h2>
<table>
<tr>
<th></th>
<th>
int_GroupId
</th>
<th>
vcr_GroupName
</th>
<th>
txt_GroupDescription
</th>
<th>
bit_Is_Deletable
</th>
<th>
bit_Active
</th>
<th>
int_CreatedBy
</th>
<th&g开发者_如何学JAVAt;
dtm_CreatedDate
</th>
<th>
int_ModifiedBy
</th>
<th>
dtm_ModifiedDate
</th>
</tr>
<% foreach (var item in Model) { %>
<tr>
<td>
<%= Html.ActionLink("Edit", "Edit", new { id=item.int_GroupId }) %> |
<%= Html.ActionLink("Details", "Details", new { id=item.int_GroupId })%> |
<%= Html.ActionLink("Delete", "Delete", new { id=item.int_GroupId })%>
</td>
<td>
<%= Html.Encode(item.int_GroupId) %>
</td>
<td>
<%= Html.Encode(item.vcr_GroupName) %>
</td>
<td>
<%= Html.Encode(item.txt_GroupDescription) %>
</td>
<td>
<%= Html.Encode(item.bit_Is_Deletable) %>
</td>
<td>
<%= Html.Encode(item.bit_Active) %>
</td>
<td>
<%= Html.Encode(item.int_CreatedBy) %>
</td>
<td>
<%= Html.Encode(String.Format("{0:g}", item.dtm_CreatedDate)) %>
</td>
<td>
<%= Html.Encode(item.int_ModifiedBy) %>
</td>
<td>
<%= Html.Encode(String.Format("{0:g}", item.dtm_ModifiedDate)) %>
</td>
</tr>
<% } %>
</table>
>>", "UpcomingDinners", new { page = (Model.PageIndex + 1) }) %>
<p>
<%= Html.ActionLink("Create New", "Create") %>
</p>
You lost some data when you pasted your code. This is what I think you meant to paste: View
<%@ Page Title="" Language="C#"
MasterPageFile="~/Views/Shared/Site.Master"
Inherits="System.Web.Mvc.ViewPage<MvcApplication13.Helpers.PaginatedList<MvcApplication13.Models.Groups>>" %>
If so , you code should look similar to this (ie. create a new instance of the PaginatedList class):
public ActionResult Index(int? page) {
const int pageSize = 10;
var upcomingDinners = dinnerRepository.FindUpcomingDinners();
var paginatedDinners = new PaginatedList<Dinner>(upcomingDinners, page ?? 0, pageSize);
return View(paginatedDinners);
}
http://nerddinnerbook.s3.amazonaws.com/Part8.htm
精彩评论