如何在视图中调用控制器方法?

时间:2016-02-03 19:35:11

标签: asp.net-mvc

我的问题是,当我想要获得与同一作者姓名相匹配的最佳4个帖子时,如下图所示:

这是控制器:

Controller Code

以下是观点:

View code

那么我如何从视图中调用控制器方法,代码会是什么样子?并谢谢..

这里也是控制器方法:

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>

并谢谢

1 个答案:

答案 0 :(得分:1)

如果您尝试在另一个视图中显示SameAuthor操作方法的结果,可以使用Html.Action辅助方法来执行此操作。

因此,在您的其他剃刀视图中,您可以包含以下行

@Html.Action("SameAuthor","Book",new {author="Author name here"})