如何在 Blazor 中将 InputDate 字段的默认值设置为 null?
How to set Default value as null for InputDate field in Blazor?
我的 Blazor 编辑表单中有很多 InputDate 字段。当我 运行 我的代码时,默认情况下它设置为 01/01/0001。我觉得有点奇怪。我觉得它应该默认设置为空白。这样当用户错过输入日期时会弹出错误(因为 OrderDate 设置为 Required)。
是否有任何 Blazor 方法或方法?
一些代码片段:
<div class="form-group col">
<label>Order Date</label>
<InputDate @bind-Value="model.OrderDate" class="form-control" />
<ValidationMessage For="@(() => model.OrderDate)" />
</div>
型号代码:
[Required]
[Display(Name = "OrderDate")]
public DateTime OrderDate { get; set; }
Blazor 不是这里的罪魁祸首,它是 .net 的东西。 01-01-0001 是有效日期(DateTime.MinValue
和 default(DateTime)
)。
您模型中的 属性 不可为空,因此您看到的是正确的。当您需要空值时,您必须更改模型:
//public DateTime OrderDate { get; set; }
public DateTime? OrderDate { get; set; }
Blazor 支持可为 null 的值类型。
我的 Blazor 编辑表单中有很多 InputDate 字段。当我 运行 我的代码时,默认情况下它设置为 01/01/0001。我觉得有点奇怪。我觉得它应该默认设置为空白。这样当用户错过输入日期时会弹出错误(因为 OrderDate 设置为 Required)。 是否有任何 Blazor 方法或方法?
一些代码片段:
<div class="form-group col">
<label>Order Date</label>
<InputDate @bind-Value="model.OrderDate" class="form-control" />
<ValidationMessage For="@(() => model.OrderDate)" />
</div>
型号代码:
[Required]
[Display(Name = "OrderDate")]
public DateTime OrderDate { get; set; }
Blazor 不是这里的罪魁祸首,它是 .net 的东西。 01-01-0001 是有效日期(DateTime.MinValue
和 default(DateTime)
)。
您模型中的 属性 不可为空,因此您看到的是正确的。当您需要空值时,您必须更改模型:
//public DateTime OrderDate { get; set; }
public DateTime? OrderDate { get; set; }
Blazor 支持可为 null 的值类型。