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

如何修改ASP.NET Core标签助手默认输出的验证错误提示文本

自定义ASP.NET Tag Helper默认验证错误信息的方法

完全可以替换默认错误文本,以下是两种常用实现方案:

  • 方案1:单个属性自定义提示(灵活适配不同字段的个性化提示)
    在表单绑定的模型类对应属性上,通过[Required]数据注解的ErrorMessage参数指定自定义提示即可:
using System.ComponentModel.DataAnnotations;

// 你的表单绑定模型类
public class TicketSubmitModel
{
    [Required(ErrorMessage = "请输入项目名称")]
    public string ProjectName { get; set; }

    // 其他字段也可按同样规则配置
    [Required(ErrorMessage = "请填写问题描述")]
    [StringLength(500, ErrorMessage = "问题描述不能超过500字")]
    public string Description { get; set; }
}
  • 方案2:全局统一替换所有必填字段的默认提示(适合全站统一提示规则,无需逐个属性配置)
    如果不需要给每个字段单独配置提示,想要所有必填字段默认提示统一,可以在服务注册阶段配置ModelBindingMessageProvider,以.NET 6+的Program.cs为例:
var builder = WebApplication.CreateBuilder(args);

// 其他服务注册逻辑
builder.Services.AddMvc(options =>
{
    // 替换必填字段默认提示,{0}会自动替换为对应的字段名
    options.ModelBindingMessageProvider.SetValueIsRequiredAccessor(fieldName => $"请填写{fieldName}字段");
    // 可根据需求替换其他类型的默认验证提示,例:数字格式错误提示
    options.ModelBindingMessageProvider.SetValueMustBeANumberAccessor(fieldName => $"{fieldName}必须为有效数字");
});

// 后续中间件配置、启动逻辑
var app = builder.Build();
app.Run();

配置完成后,原有的前端表单代码不需要做任何修改,Tag Helper会自动渲染你配置的自定义错误文本。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 16:57:01