ViewBag returns 在 PartialView 中为空,但在调试器中显示值
ViewBag returns empty in PartialView but shows the value in debugger
我正在尝试 return 从我的控制器到 PartiaView
通过 ViewBag
的值,但它根本不显示该值。
这是我的控制器:
public PartialViewResult Index(int articleid)
{
var allcomments = _db.SelectAll();
var comments = from c in allcomments
where c.ArticleID == articleid
select c;
var result = comments.ToList();
ViewBag.CommentCount = result.Count;
return PartialView(result);
}
我运行另一个视图中的动作方法使用Html.RenderPartial()
:
@using ClearBlog.Helpers
@model ClearBlog.Models.ViewModels.SingleArticleViewModel
@{
ViewBag.Title = "Details";
}
// stuff here
@{ Html.RenderAction("Index", "Comments", new { articleid = 6002 }); }
最后是局部视图:
@using AutoMapper.Internal
@model IEnumerable<ClearBlog.Models.Comment>
@ViewBag.CommentCount Comment(s):
@foreach (var item in Model)
{
// some stuff
}
在局部视图中,它不呈现任何内容,但如果我在局部视图中设置断点,那么在局部选项卡的调试器中它会显示正确的值:
在局部视图文件的第 4 行 @ViewBag.CommentCount
应该是 @ViewBag.CommentCount.ToString()
。也可以在将值分配给 ViewBag
之前在控制器中进行转换,这样我们就不必在视图中进行转换。
我正在尝试 return 从我的控制器到 PartiaView
通过 ViewBag
的值,但它根本不显示该值。
这是我的控制器:
public PartialViewResult Index(int articleid)
{
var allcomments = _db.SelectAll();
var comments = from c in allcomments
where c.ArticleID == articleid
select c;
var result = comments.ToList();
ViewBag.CommentCount = result.Count;
return PartialView(result);
}
我运行另一个视图中的动作方法使用Html.RenderPartial()
:
@using ClearBlog.Helpers
@model ClearBlog.Models.ViewModels.SingleArticleViewModel
@{
ViewBag.Title = "Details";
}
// stuff here
@{ Html.RenderAction("Index", "Comments", new { articleid = 6002 }); }
最后是局部视图:
@using AutoMapper.Internal
@model IEnumerable<ClearBlog.Models.Comment>
@ViewBag.CommentCount Comment(s):
@foreach (var item in Model)
{
// some stuff
}
在局部视图中,它不呈现任何内容,但如果我在局部视图中设置断点,那么在局部选项卡的调试器中它会显示正确的值:
在局部视图文件的第 4 行 @ViewBag.CommentCount
应该是 @ViewBag.CommentCount.ToString()
。也可以在将值分配给 ViewBag
之前在控制器中进行转换,这样我们就不必在视图中进行转换。