在我的HomeController中,我创建了一个模型。
var model = this._postService.GetPostByParams(...);
return View(model);
我可以在View中获取模型。
@model ShowPin.Core.Paging.PagedList<ShowPin.Core.Domain.Posts.Post>
@foreach(var item in Model){
<li>@Html.RouteLink(item.Title, "Post", new { postId = item.Id})</li>
}
但是,在我的一些观点中,我希望将几个模型传递给View。我怎么能得到它。
我读了很多文章,但总是有错误。
参考:
我尝试使用ViewData
,但我无法将模型转换为正确的类型。
我尝试使用这种方式。在我创建新的模型类repository
之后。
public class Repository
{
public Repository()
{
}
public IPagedList<Post> cat1 { get;set; }
public IPagedList<Post> cat2 { get; set; }
}
在控制器类
中_repository.cat1 = this._postService.GetPostByParams(...);
_repository.cat2 = this._postService.GetPostByParams(...);
return View(_repository)
我无法从此模型中获取正确的数据。
我是ASP.NET MVC4的新手,我对将复杂模型传递给视图感到困惑。
答案 0 :(得分:1)
请创建一个映射到每个视图的ViewModel。在这些ViewModel中,您可以指定多个模型并在视图中相应地使用它们。