C# 从@HTML.Action请求分配Viewbag

C# 从@HTML.Action请求分配Viewbag,c#,html,asp.net-mvc,viewbag,actionmethod,C#,Html,Asp.net Mvc,Viewbag,Actionmethod,当请求页面时,我正在启动DevExpress Gridivew @Html.Action("ActionName") 在这个ActionResult方法中,代码填充了gridview,我想使用一个viewbag来显示网格中的项目总数 // we have the row count - so assign it. ViewBag.NoOpenItems = List<People>.Count; return PartialView("GridView", List<P

当请求页面时,我正在启动DevExpress Gridivew

@Html.Action("ActionName") 
在这个ActionResult方法中,代码填充了gridview,我想使用一个viewbag来显示网格中的项目总数

// we have the row count - so assign it. 
ViewBag.NoOpenItems = List<People>.Count;

return PartialView("GridView", List<People>);
因此,一旦填充网格并指定viewbag,viewbag就不会显示其中的任何内容

<h5>Total @ViewBag.NoOpenItems</h5> 
但是,当我在页面加载时将值分配给主GET Action方法中的viewbag时,viewbag值会正确显示在页面上,因此我猜测这与在Action方法中分配viewbag有关实际上,当我写这篇文章时,我猜问题在于操作方法返回PartialView


如果是这样,有人知道我如何实现我喜欢做的事情吗?

如果模型是列表,您可以直接在视图中使用它,而不是放在ViewBag中:

或:


您可以使用Gridivew Pager属性显示记录的编号

settings.SettingsPager.Position = PagerPosition.TopAndBottom;
    settings.SettingsPager.FirstPageButton.Visible = true;
    settings.SettingsPager.LastPageButton.Visible = true;
    settings.SettingsPager.PageSizeItemSettings.Visible = true;
    settings.SettingsPager.PageSizeItemSettings.Items = new string[] { "10", "20", "50" };

有关详细信息,请访问

List.Count不是有效的C语法。我知道。。。。上面的代码说明了我是如何使用IList设置viewbag的。count from a IList,但它的语法并不重要。创建一个ViewModel,并将其属性和Pass the model设置为VIEW我同意这一点,这是我通常会做的,但对于这样一个小的添加,我喜欢使用viewbag,但我喜欢这样做,在返回PartialView之前分配计数不会再次触发该代码,因此@Model将始终为NULL
<h5> @(Model != null ? Model.Count : 0)</h5>
settings.SettingsPager.Position = PagerPosition.TopAndBottom;
    settings.SettingsPager.FirstPageButton.Visible = true;
    settings.SettingsPager.LastPageButton.Visible = true;
    settings.SettingsPager.PageSizeItemSettings.Visible = true;
    settings.SettingsPager.PageSizeItemSettings.Items = new string[] { "10", "20", "50" };