You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VS2022 scaffolding视图生成ASP语法而非Razor语法,是否为新特性?

问题解答

核心结论

这不是VS2022的独家新特性——**标签助手(Tag Helpers)**早在ASP.NET Core 1.0就已引入,后续版本的Visual Studio(包括VS2022)只是将它设为视图脚手架的默认生成语法,取代了传统的HTML帮助器(Html Helpers)。

两种语法的区别与定位

  • 标签助手的语法更贴近原生HTML,可读性更强,比如你看到的<form asp-action="Index">、<input asp-for="TracisNum">,和@Html.BeginForm、@Html.TextBoxFor功能完全等价:都负责生成对应HTML、处理模型绑定、验证逻辑。
  • 传统Html Helpers是ASP.NET MVC时代的产物,ASP.NET Core仍保留对它的支持,但官方更推荐使用标签助手。

如何改回生成Html Helpers代码?

在VS2022添加视图的流程里,选择模板后点击**"高级"按钮,勾选"使用HTML帮助器"**选项,脚手架就会生成@Html.BeginForm、@Html.TextBoxFor这类代码。

你提供的脚手架生成代码(标签助手版本)

<form asp-action="Index">
    <div asp-validation-summary="ModelOnly" class="text-danger"></div>
    <div class="form-group">
        <label asp-for="TracisNum" class="control-label"></label>
        <input asp-for="TracisNum" class="form-control" />
        <span asp-validation-for="TracisNum" class="text-danger"></span>
    </div>
</form>

内容的提问来源于stack exchange,提问作者SDanks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 19:14:58