0

我正在使用@Html.EditorFor(model => model.MyModel)并且我想在我的模型中添加或设置 Id 属性作为隐藏字段。这可以通过使用代码来完成,ScaffoldColumnAttribute但我想在运行时执行此操作。可能吗?

4

2 回答 2

0

如果你想实现的是在调用时隐藏实体的ID字段,那么你可以使用.MyModelEditorFor(m => m.MyModel)EditorTemplate

在您的Views/Shared文件夹中,创建一个名为EditorTemplates. 在该文件夹中创建一个新视图,名为MyModel.cshtml其内容将是这样的:

@model ***.MyModel

@if (Model != null) {
    @Html.HiddenFor(m => m.ID)
}

@Html.LabelFor(m => m.Property1);
@Html.EditorFor(m => m.Property1);

模型是否存在的测试就是在这里处理Create视图。

最后,要处理这种DisplayFor情况,您还必须为此添加一个模板,命名为Views/Shared/DisplayTemplates/MyModel.cshtml

于 2013-02-05T11:29:03.410 回答
0

假设这是您想要的,您可以使用@Html.HiddenFor(s=>s....)

于 2013-02-05T11:05:50.450 回答