我正在使用EF CodeFirst处理ASP.NET MVC 3项目。我有一个简单的类与键柱设置几个属性:尽管使用ScaffoldColumn,仍未显示键列(true)
public class Tag
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.None)]
[ScaffoldColumn(true)]
public short TagID { get; set; }
[Required]
[MaxLength(50)]
public string Name { get; set; }
}
正如你可以看到有DatabaseGenerated(DatabaseGeneratedOption.None)和ScaffoldColumn(真)的属性。这是因为我想要手动输入TagID。现在,当将TagControler添加到项目中时,我没有在5个生成的视图中均未显示TagID列。
我知道我可以手动添加它,但我不知道这种行为是设计还是我做错了什么?
我同意这编辑实体的主键没有任何意义,但在创建时手动输入它肯定是有意义的。恕我直言,只有在数据库不能自动生成的主键字段与任何其他可编辑字段之间的区别应该只在编辑视图中,其中主键字段应该显示为只读。 – Anil