我在ASP.Net MVC中创建新闻网站。
我希望在数据库中显示4个最后一行数据时(“SP”)。
但当我运行Project Show Me Just Just Last Row时。
我如何解决它?
我的数据库:Database Record
我创建了这个存储库。
public List<Tbl_News> GetSpecialNews()
{
try
{
List<Tbl_News> qGetSpecialNews = (from a in db.Tbl_News
where a.Type.Equals("sp")
select a).OrderByDescending(s => s.ID).Skip(0).Take(4).ToList();
return qGetSpecialNews;
}
catch (Exception)
{
return null;
}
}
部分视图:
@{
foreach (var item in RNews.GetSpecialNews())
{
<div class="sec-special-page-news-img">
<img src="~/Content/img/NewsPic/@item.Image" />
</div>
<div class="sec-special-page-news-body">
<a href="@item.ID">@item.Title</a>
<ul class="mini-info">
<li>@item.Date<span class="glyphicon glyphicon-time"></span></li>
</ul>
</div>
}
}
家庭控制:
public class HomeController : Controller
{
Rep_News RNews = new Rep_News();
// GET: Home
public ActionResult Index()
{
var q = RNews.GetSpecialNews();
return View(q);
}
}
答案 0 :(得分:1)
引用评论
您的代码应返回4条记录。此外,您不需要打电话 RNews.GetSpecialNews()方法再次在您的视图中执行 在您的操作方法中并将其传递给视图。做一个 关于模型的预告
public List<Tbl_News> GetSpecialNews() {
try {
List<Tbl_News> qGetSpecialNews =
(from a in db.Tbl_News
where a.Type.Equals("sp")
select a)
.OrderByDescending(s => s.ID)
.Take(4)
.ToList();
return qGetSpecialNews;
}
catch (Exception) {
return null;
}
}
查看
@model List<Tbl_News>
@{
foreach (var item in Model)
{
<div class="sec-special-page-news-img">
<img src="~/Content/img/NewsPic/@item.Image" />
</div>
<div class="sec-special-page-news-body">
<a href="@item.ID">@item.Title</a>
<ul class="mini-info">
<li>@item.Date<span class="glyphicon glyphicon-time"></span></li>
</ul>
</div>
}
}