首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >属性[Required]没有在Blazor中为表单输入验证处理int?

属性[Required]没有在Blazor中为表单输入验证处理int?
EN

Stack Overflow用户
提问于 2021-04-28 14:10:58
回答 1查看 1.7K关注 0票数 1

所需的属性似乎不适用于整数值。我还在整数字段上尝试了Range属性,并且行为正常。问题是验证没有完成,前端所需的消息也没有显示出来。对于字符串值,该属性的行为与预期相同。这是示例代码:

代码语言:javascript
复制
@page "/test"


<EditForm Model="@exampleModel">
    <DataAnnotationsValidator />
    <ValidationSummary />

        <InputNumber @bind-Value="exampleModel.Name2"></InputNumber>

        <button type="submit" value="Save" >
            Submit
        </button>

</EditForm>

@code {
    private ExampleModel exampleModel = new ExampleModel();


    public partial class ExampleModel
    {

        [Required]
        public string Name { get; set; }

        [Required]
        [Range(1, 100, ErrorMessage = "Error Test")]
        public int Name2 { get; set; }


    }
}

名称所需的属性正在工作,而Name2的属性则不起作用。Name2的Range属性正按预期工作。

我在VisualStudio16.9.4中使用ASP.NET Core3.1。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-28 17:15:11

默认情况下,Name2属性等于零。但是,由于允许的最小值为1,所以在加载表单时看不到零。

一些解决办法:

  1. 将Name2初始化为介于1和100 OR

之间的整数值。

  1. 将Name2声明为可空int。

公开的int?Name2 { get;set;}

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67301910

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档