sepehr.aliakbary
دوشنبه 21 مهر 1393, 19:44 عصر
سلام
من دو مدل مختلف دارم بع نام های Post و Album
می خوام توی صفحهی اول سایتم ترکیبی از این دو مدل رو نمایش بدم بصورتی که بر اساس تاریخ درجشون مرتب بشن. اما وقتی از ViewModel استفاده میکنم حتما یکی از مدل ها باید بعد از اون یکی نمایش داده بشه. راهی هست که بشه این دو تا مدل رو ترکیب کرد؟
کد ViewModelم :
public class PostMainPage {
public IEnumerable<Post> AllPost { get; set; }
public IEnumerable<Album> AllAlbums { get; set; }
}
کد Controller :public ActionResult PostMainPage() {
var item = db.Posts.OrderByDescending(s => s.TimeToPublish).Take(4);
var item2 = db.Albums.OrderByDescending(s=>s.TimeToPublish).Take(4);
var model = new PostMainPage
{
AllPost = item,
AllAlbums = item2
};
return View(model);
}
و کد View:
@model Project.ViewModels.PostMainPage
@foreach (var item in Model.AllPost )
{..................}
@foreach(var item in Model.AllAlbums)
{..............}
من دو مدل مختلف دارم بع نام های Post و Album
می خوام توی صفحهی اول سایتم ترکیبی از این دو مدل رو نمایش بدم بصورتی که بر اساس تاریخ درجشون مرتب بشن. اما وقتی از ViewModel استفاده میکنم حتما یکی از مدل ها باید بعد از اون یکی نمایش داده بشه. راهی هست که بشه این دو تا مدل رو ترکیب کرد؟
کد ViewModelم :
public class PostMainPage {
public IEnumerable<Post> AllPost { get; set; }
public IEnumerable<Album> AllAlbums { get; set; }
}
کد Controller :public ActionResult PostMainPage() {
var item = db.Posts.OrderByDescending(s => s.TimeToPublish).Take(4);
var item2 = db.Albums.OrderByDescending(s=>s.TimeToPublish).Take(4);
var model = new PostMainPage
{
AllPost = item,
AllAlbums = item2
};
return View(model);
}
و کد View:
@model Project.ViewModels.PostMainPage
@foreach (var item in Model.AllPost )
{..................}
@foreach(var item in Model.AllAlbums)
{..............}