asp.net-mvc - 如何从我的 _layout View 调用操作方法

标签 asp.net-mvc razor

我有一个操作方法可以在我的应用程序中显示最新的 5 条记录:-

[HttpGet]
public IEnumerable<Technology> LatestAssets()
{
      var tech = repository
                          .LatestTechnology()
                          .OrderByDescending(a => a.TechnologyID).ToList() ;
      return tech;    
}

但是我如何在呈现 _layout View 时调用此操作方法(无需单击任何链接),并对其进行迭代以显示有关最新 5 条记录的信息? 我的 _layout View 有以下部分显示其下的最新记录信息:-

<li class = "nav-header hidden-tablet"
     style = "background-color:#3E9BD4 ; color:white">Latest Assets
</li>

最佳答案

你可以试试这个:

Controller :

[HttpGet]
public ActionResult LatestAssets()
{
    var tech = repository
                        .LatestTechnology()
                        .OrderByDescending(a => a.TechnologyID).ToList();
    return PartialView("_Assets", tech);

}

_Assets(局部 View ):

@foreach (var asset in Model)
{
     <li class = "nav-header hidden-tablet"
         style = "background-color:#3E9BD4 ; color:white">@asset
    </li>
}

然后你可以在你的布局 View 中调用它

编辑:

布局 View :

@{ Html.RenderAction("LatestAssets", "ControllerName"); }

关于asp.net-mvc - 如何从我的 _layout View 调用操作方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18317056/

相关文章:

javascript - 序列化、反序列化 C#/JSON 对象并且没有大小写问题

c# - 使用 EntityObjects 作为模型 (MVC) 是一种好习惯吗?

c# - ASP MVC 5 : How to pass Integer from controller to the view

javascript - 如何访问 @URL.Action() 中的 javascript 变量

asp.net-mvc - 如何在 Razor MVC 3 中浏览器未继承 View 时编写动态 c# 代码

asp.net-mvc-3 - 如何在 View 和部分 View (合并)中多次使用“ Razor ”部分而不覆盖它?

c# - 对象的 MVC 模型绑定(bind)列表

asp.net-mvc - MvcMailer:通过模型在 View 中获取用户输入,然后将其插入邮件

c# - 如何在仍然使用 ASP.NET MVC 的同时为网站开发快速原型(prototype)?

javascript - 在 mvc 4 razor 中逐一选中列表中的每个复选框后,如何调用 Ajax 函数