我已经在模型类中将一个属性标记为只读属性,如下所示:
public class RegisterModel { [Display(Name = "User name")] [ReadOnly(true)] public string UserName { get; set; } ... }
在我看来:
@Html.EditorFor(m => m.UserName)
但是当我运行应用程序时,文本框不是只读的.
我知道我可以在视图中使用html属性来使其成为readonly,但是我宁愿在模型类本身中完成这一点.
可以实现吗
解决方法
[更新]我不认为没有新的{@readonly =“readonly”}可能是可能的.Readonly属性指定此属性绑定的属性是只读还是读/写.
Details Here.
但是您可以尝试使用Custom Helpers或尝试在模型上使用“可编辑”而不是“Readonly”,并在“视图”中使用元数据属性.
[Editable(false)]
我想你已经考虑过了
Does ReadOnly(true) work with Html.EditorForModel?
也
一个很好的文章odetocode.com