为什么HTML.TextArea前需要一个@

本文关键字:一个 HTML TextArea 为什么 | 更新日期: 2023-09-27 17:50:46

下面似乎不起作用,除非@在@ html之前。为什么呢?

@{
 if (DescriptionIsFieldReadOnly) {
                            Html.TextArea("description-edit", Model.Requisition.ReqHdr.Description, new { @Readonly = "readonly" });
                        }
                        else {
                            Html.TextArea("description-edit", Model.Requisition.ReqHdr.Description);
                        } 
}

为什么HTML.TextArea前需要一个@

Html.TextArea(...)返回具有所需HTML代码的IHtmlString

如果你把它作为一个普通的函数来调用,你实际上不会对返回值做任何事情,所以什么也不会发生。

使用@将其转换为Razor表达式,并将其值打印到页面。

顺便说一下,这不是一个语句,所以它不应该有分号。

使用@字符向页面添加代码。@:序列表示接下来的内容行应该被视为内容块。

Html。TextArea返回一个字符串,要使用razor视图引擎渲染它,你需要在它的开始使用@,就像你要求的@ html。TextArea