1

我什至不确定我会如何问这个问题。基本上,你知道在 Razor 中你有这样的东西:

@model MyProj.childObj
// Current scope is childObj
@Html.LabelFor(m => m.MyVal)
@Html.LabelFor(m => m.MyVal2)
@Html.LabelFor(m => m.MyVal3)
...

这一切都很好,花花公子,但是如果我将 childObj 连接到另一个 obj 呢?例如:

@model MyProj.parentObj

所以现在,我可以这样做:

// Current scope is parentObj
@Html.LabelFor(m => m.childObj.MyVal)
@Html.LabelFor(m => m.childObj.MyVal2)
@Html.LabelFor(m => m.childObj.MyVal3)
...

这很好,但由于我有很多变量,我想这样做:

// Current scope is parentObj
@using (Model.childObj) {
    // Current scope is now childObj
    @Html.LabelFor(m => m.MyVal)
    @Html.LabelFor(m => m.MyVal2)
    @Html.LabelFor(m => m.MyVal3)
    ...
}

这可能吗?

4

1 回答 1

1

是的。您可以在 Razor 中定义变量并使用它们。

@{
    var child = Model.childObj;
    @Html.LabelFor(m => child.MyVal)
    @Html.LabelFor(m => child.MyVal2)
    @Html.LabelFor(m => child.MyVal3)
}
于 2013-05-27T15:35:37.323 回答