我在编辑表格中显示:用户名,时区,客户......
我不想编辑用户名,只显示他的名字。
我在View中使用的代码:
<label>Username </label>
<div class="editor-field">
@Html.EditorFor(model => model.username)
</div>
那么放置什么来代替EditorFor,它将显示用户名(仅用于阅读,而不是用于编辑)。
答案 0 :(得分:1)
为什么不直接使用@Html.DisplayFor
?这只会将用户名显示为标签。或者,如果您希望使用@Html.EditorFor
或@Html.EditorForModel
,则可以为username
属性创建自定义editor template,并在编辑器模板中显示内容,而不是启用编辑。
此外,我建议您在模型绑定期间使用[Bind(Exclude="username")]
动作方法中的模型参数POST
来排除此属性,以防止注入攻击。有关此here的更多信息。
答案 1 :(得分:0)
找到解决方案:
@Html.TextBoxFor(model => model.username, new {disabled = "disabled", @readonly = "readonly" })