在View中显示字典值

时间:2014-02-01 14:00:53

标签: c# asp.net asp.net-mvc

我正在使用带有MVC的C#asp.net而我刚刚开始,所以我在理解如何将字典传递给视图并打印出每个值时遇到了一些麻烦。

我的字典看起来像:

Dictionary<int, Dictionary<string, int>> values = new Dictionary<int, Dictionary<string, int>>();

我想要的是为每个循环嵌套并打印出来:

firstInt   FirstString --valueInt
           SecondString--valueInt2
SecondInt  FirstString--valueInt3
           SecondString--valueInt4

使用C#,我知道如何执行此操作,因为我只需浏览字典并打印出它们的值,但我不知道如何在视图中执行此操作。返回字典的方法在控制器中。

1 个答案:

答案 0 :(得分:6)

假设Razor是您的视图引擎,请将字典放在ViewBag中并在视图中执行以下操作:

@foreach (var item in ViewBag.MyDictionary) {
<ul>
    <li>@item.Key
    <ul>
    @foreach (var subItem in item.Value) {
        <li>@subItem.Key --@subItem.Value</li>
    }
    </ul>
    </li>
</ul>
}