嗨有人可以帮助我如何从我的视图中访问viewbag值(.cshtml) 这是我的样本
var appointments = new[,] { { "4/1/2013", "B'day" }, { "4/2/2013", "Appointment with abc" } };
ViewBag.Appointments = appointments;
现在我想从我的.cshtml文件中访问ViewBag.Appointments值。
有什么想法吗?
答案 0 :(得分:5)
这是您访问viewbag中数据的方式。请记住正常动态的viewbag数据,并且只能在运行时访问。
Viewbag.appoints = appointments;
在控制器中设置viewbag的值之后。然后转到视图并以这种方式访问该数据。
@{
var results = Viewbag.appoints;
}
然后,您可以遍历结果以使用foreach循环获取单个项目。
@foreach(var item in results)
{
<p>item.value</p>
}
希望这有帮助
答案 1 :(得分:0)
要遍历此数组并在cshtml中“打印”,请使用以下代码:
@foreach(var appointement in ViewBag.Appointments)
{
<span>@appointement[0]</span>
<span>@appointement[1]</span>
}
答案 2 :(得分:0)
要在单个列的视图中打印viewbag的所有值,请使用以下
@{
for (int i = 0; i < ViewBag.Appointments.GetLength(0); i++)
{
for (int j = 0; j < ViewBag.Appointments.GetLength(1); j++)
{
<B> @ViewBag.Appointments[i, j] </B> <br />
}
}
}
要在视图中将视图包的所有值打印为键值对,请使用以下
@{
for (int i = 0; i < ViewBag.Appointments.GetLength(0); i++)
{
<B> Key= @ViewBag.Appointments[i, 0], Value= @ViewBag.Appointments[i, 1] </B> <br />
}
}
编辑 - 根据以下评论中的要求
您可以在GIT Hub上查看此NGON项目。 注意:在同一页面上,您会找到详细的教程。
帮助页面中的一小段摘录,可帮助您入门。
在控制器中,您可以向ViewBag的动态NGon属性添加任何值:
public class HomeController : Controller
{
public ActionResult Index()
{
ViewBag.NGon.Appointments= new[,] { { "4/1/2013", "B'day" }, { "4/2/2013", "Appointment with abc" } };
return View();
}
}
然后在你的脚本函数中,你可以使用它,如下所示
<script type="text/javascript">
$(function () {
var appointments= ngon.Appointments;
// You logic will come here
}); </script>
尝试一下,它应该有效。