在视图中获取有关模型的信息是否“破坏”MVC?

时间:2011-02-22 15:02:21

标签: asp.net-mvc-3

我是MVC的新手,我对我的观点有疑问。

我有一个强类型视图:

@model CellularAutomata.Models.D1CellularAutomata
@{
    ViewBag.Title = "View";
}
<h2>View</h2>

<table>
@foreach (CellularAutomata.Models.Grid grid in Model.GridHistory){ 
    <tr>
        @foreach (CellularAutomata.Models.Cell cell in grid.Cells[0]){
            if (cell.State == CellularAutomata.Models.State.On){
                <td>X</td>
            }
            if (cell.State == CellularAutomata.Models.State.Off){
                <td>O</td>
            }
        }
    </tr>
}
</table>

它是否违反MVC的规则以在我的视图中引用模型的部分,例如

(CellularAutomata.Models.Cell cell in grid.Cells[0])

(cell.State == CellularAutomata.Models.State.On)

如果这不正确,修复它的最佳方法是什么?

1 个答案:

答案 0 :(得分:4)

完全没有,因为您的视图是针对您的模型强烈输入的。如果您的视图与模型无关,那么这将是一个问题,但由于这是 D1CellularAutomata的视图,因此在您的视图中使用D1CellularAutomata特定参考是合适的。