【问题标题】:How do I Default the date to todays date for required field using EditForm?如何使用 EditForm 将必填字段的日期默认为今天的日期?
【发布时间】:2020-04-08 20:39:16
【问题描述】:

我有一个必需的属性(使用 DataAnnotations),它默认所有没有 ?在类型后标记。它默认为 01/01/0001。如何将其设为空白或默认为某个日期?

PS 我还有两个 int 属性,它们默认为 0。这没有意义,因为我不知道它是如何默认的。

模型属性:

表单域:

【问题讨论】:

    标签: c# asp.net asp.net-core blazor


    【解决方案1】:

    只需在模型中添加一个默认值

    [Required(ErrorMessage = "The Job Start Date field is Required")]
    public DateTime StartDate { get; set; } = DateTime.Now;
    

    【讨论】:

    • 非常感谢。我实际上是想在 Razor 组件区域内设置一个默认值。现在按预期工作。
    • @ChadLomax inside the razor component area 是什么意思?请告诉我那个区域在哪里
    • 您在您的模型中执行此操作,您的表单将映射到该模型。这里的答案应该被接受。但是,答案中有错字。这不是“=Datime.Now”而是“=DateTime.Now;”
    • @zaifrun 感谢您注意到错字!
    【解决方案2】:

    除了添加默认值之外,您还可以覆盖 OnInitialized blazor 组件方法并在组件中设置默认值。

    protected override void OnInitialized()
    {
       request.StartDate = DateTime.Now;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-22
      • 1970-01-01
      • 1970-01-01
      • 2014-01-12
      相关资源
      最近更新 更多