@Html.EditorForModel()
我在我所有的观点上都使用了助手。
他希望他跳过我的模型中的两个字段,但仅在此视图上,另一个他必须像往常一样继续显示这些字段。
如何仅在此视图中跳过这两个字段?
@Html.EditorForModel()
我在我所有的观点上都使用了助手。
他希望他跳过我的模型中的两个字段,但仅在此视图上,另一个他必须像往常一样继续显示这些字段。
如何仅在此视图中跳过这两个字段?
使用[ScaffoldColumn(false)]
属性。
例如
public class Person {
[ScaffoldColumn(false)]
public int PersonID { get; set; }
...
解决方案和示例来自:Pro ASP.NET MVC 3 Framework,第三版
我建议为您想要偏离默认行为的任何视图编写视图模型。
旁注:为每个视图编写一个视图模型可能是一个好主意,因为您可以分离关注点,并且更容易控制每个视图的行为。
反正...
例如,假设您的模型是
class Herps {
public string Name { get; set; }
public int SecretToSomePeople { get; set; }
}
并且您不想SecretToSomePeople
在其中一个视图上显示,请创建一个不包含SecretToSomePeople
class Herps {
public string Name { get; set; }
}
并将其用作所需视图的模型。确保您在某处复制到/从实际模型中复制。
严格来说,如果您不想显示字段,那么它们不应该出现在模型上——模型的目的是准确保存视图所需的数据。