我的问题是,当我想要获得与同一作者姓名相匹配的最佳4个帖子时,如下图所示:
这是控制器:
以下是观点:
那么我如何从视图中调用控制器方法,代码会是什么样子?并谢谢..
这里也是控制器方法:
public ActionResult SameAuthor(string author)
{
var result = db.Books.Where(b => b.Author_name == author).Take(4).ToList();
return View(result);
}
和视图代码(书页,下面的代码是书页的一部分,显示书的详细信息和信息,所以这个代码在帖子下显示详细信息,同一作者的最多4篇帖子)是:
//DISPLAYING 4 BOOKS FOR SAME AUTHOR
<div class="well">
<div class="row">
@foreach (var item in Model)
{
<div class="col-sm-6 col-md-3">
<div class="thumbnail">
<img src="/Books/RetrieveImage/@item.Book_id" alt="Generic placeholder thumbnail">
</div>
<div class="caption">
<h3>@item.Book_name</h3>
<p>Some sample text. Some sample text.</p>
<p>
<a href="#" class="btn btn-primary" role="button">
Button
</a>
<a href="#" class="btn btn-default" role="button">
Button
</a>
</p>
</div>
</div>
}
</div>
</div>
并谢谢
答案 0 :(得分:1)
如果您尝试在另一个视图中显示SameAuthor
操作方法的结果,可以使用Html.Action
辅助方法来执行此操作。
因此,在您的其他剃刀视图中,您可以包含以下行
@Html.Action("SameAuthor","Book",new {author="Author name here"})