asp-for等常用的HTML辅助标记?

ASP.NET Core Razor Pages 和 MVC 中,除了asp-for之外,还有许多常用的 HTML 辅助标记,下面为你详细介绍:

表单与路由相关

  • asp-action 和 asp-controller
    • 用途:这两个标记用于生成表单或链接的 URL,指定目标控制器和动作方法。
    • 示例

html

<form asp-action="Create" asp-controller="Product" method="post">
    <!-- 表单元素 -->
    <button type="submit">Submit</button>
</form>

  • 解释:上述代码中,表单数据会被提交到Product控制器的Create动作方法。
  • *asp-route- **
    • 用途:用于在 URL 中添加路由参数,*代表参数名。
    • 示例

html

<a asp-action="Details" asp-controller="Product" asp-route-id="@Model.ProductId">View Details</a>

  • 解释:这里生成的链接会包含id参数,其值为Model.ProductId
  • asp-antiforgery
    • 用途:用于在表单中添加防伪标记,防止跨站请求伪造(CSRF)攻击。
    • 示例

html

<form asp-action="Create" asp-controller="Product" method="post">
    <input asp-antiforgery="true" />
    <!-- 表单元素 -->
    <button type="submit">Submit</button>
</form>

  • 解释:添加该标记后,表单提交时会带上防伪标记,服务器会验证其有效性。

下拉框与列表相关

  • asp-items
    • 用途:用于为下拉框(select元素)、单选按钮组或复选框组提供选项列表。
    • 示例

html

<select asp-for="SelectedCategoryId" asp-items="Model.CategoryList">
    <option value="">Select a category</option>
</select>

  • 解释Model.CategoryList通常是一个SelectList类型的集合,它会填充下拉框的选项。
  • asp-selected
    • 用途:用于设置下拉框选项、单选按钮或复选框是否默认选中。
    • 示例

html

@foreach (var item in Model.ItemList)
{
    <input type="checkbox" asp-for="@item.IsSelected" asp-selected="@item.IsPreSelected" />
    <label asp-for="@item.IsSelected">@item.Name</label>
}

  • 解释:如果item.IsPreSelectedtrue,则对应的复选框会默认选中。

图像与链接相关

  • asp-src
    • 用途:用于生成图像的src属性,支持相对路径和虚拟路径。
    • 示例

html

<img asp-src="~/images/product.jpg" alt="Product Image" />

  • 解释~符号表示应用程序的根目录,asp-src会正确解析路径。
  • asp-href
    • 用途:用于生成链接的href属性,可根据路由规则生成 URL。
    • 示例

html

<a asp-href="~/Home/About">About Us</a>

  • 解释:该标记会根据路由配置生成正确的 URL。

视图组件与部分视图相关

  • asp-view-component
    • 用途:用于在视图中调用视图组件。
    • 示例

html

<vc:my-view-component parameter="@Model.SomeValue"></vc:my-view-component>

解释:这里调用了名为MyViewComponent的视图组件,并传递了一个参数。

  • asp-partial
    • 用途:用于在视图中嵌入部分视图。
    • 示例

html

<partial name="_MyPartialView" model="@Model.PartialModel" />

解释:将名为_MyPartialView的部分视图嵌入到当前视图中,并传递了一个模型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值