如何使用"readonly = true attribute on @Html.TextBoxFor"



我正在开发一个简单的帮助台应用程序来提高我的 C# 技能

问题: 我想将当前登录的用户传回以存储在数据库中。这是我到目前为止所拥有的:

<div class="form-group">
@Html.LabelFor(model => model.RaisedBy, htmlAttributes: new { @class = "control-label col-md-2"})
<div class="col-md-10 ">
@Html.TextBoxFor(model => model.RaisedBy, htmlAttributes: new { @Value = User.Identity.Name.ToString() })
</div>
</div>

如果我使用 @Html.TextBoxFor,我能够成功地将我当前的登录用户传递到数据库。但是,当我尝试添加只读 = true 属性时,出现错误。

不起作用的代码:

@Html.TextBoxFor(model => model.RaisedBy, htmlAttributes: new 
{ @Value = User.Identity.Name.ToString(), readonly = true })

我花了几个小时尝试不同的组合,但我担心这是我的经验不足,我可能忽略了一些非常简单的东西。有什么想法吗?

您会收到错误,因为 readonly 是 C# 中的一个关键字。为了使用关键字作为变量名称,您需要在它们前面加上 @。只需设置 @readonly = 真

最新更新