[英]Tag helpers in ASP.NET
我现在要添加搜索功能,这需要在Razor Page和基础C#类之间传递数据。 为此,我被指示以这种方式进行:
<select asp-for="MovieGenre" asp-items="Model.Genres">
<option value="">All</option>
</select>
当然,我已经适当地初始化了字段Genres
,因此列表可以。
据我了解,在属性as asp-for
我们指定目标变量。 它很好地向URL中的查询字符串添加了变量,但是这非常麻烦,因为我需要基础类中的字段,该名称必须准确匹配。 因此,我必须具有MovieGenre
字段。 但是,如果我只想将其添加到查询字符串中又有什么意义呢? 它背后的想法是什么?
我想出了一种更简单的方法:
<select name="movieGenre" asp-items="Model.Genres">
<option value="">All</option>
</select>
仅将movieGenre=...
添加到URL,而无需在我的课程中声明额外的字段。
那么,如果我们拥有简单得多的name
属性,为什么还要使用asp-for
?
标记帮助器根据asp-for
属性中指定的属性名称添加id
和name
。 给定这个标记:
<input asp-for="Name" />
上方的标签助手会生成以下HTML:
<input type="text" id="Name" name="Name" />
如您所见,通过使用标签助手,您不再需要编写这些属性。 它们将自动为您生成。
它还可以在编码时为您提供适当的智能感知。 因此它实际上是用于创建表单元素的语法糖。
更多信息( + )
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.