【发布时间】:2021-12-14 19:29:00
【问题描述】:
所以adjournHearingInfo的newHearingDate当我没有填写为错误信息时
值 '' 无效。" 值为 "1/1/0001 12:00:00 AM"
我无法弄清楚如何访问此检查以更改此错误消息。或者,如果这不可能,请删除此检查,以便我可以自己验证日期,然后生成我想要的错误消息。这可能吗?
目前我可以向其中添加另一条错误消息,但我无法删除该消息。
DTO:
public class AdjournHearingDTO
{
public int HearingID { get; set; }
[Required(ErrorMessage ="Please enter a Date")]
[Display(Name ="Additional Hearing Date")]
[Range(typeof(DateTime), "1/1/1900","1/1/2060", ErrorMessage =("Please enter a valid date."))]
public DateTime newHearingDate { get; set; }
}
cshtml:
public AdjournHearingDTO adjournHearingInfo { get; set; }
public IActionResult OnPost()
{
if (ModelState.IsValid)
{
}
else
{
if (adjournHearingInfo.newHearingDate.Date.ToString() == "1/1/0001 12:00:00 AM")
{
ModelState.AddModelError("adjournHearingInfo.newHearingDate", "Invalid Date");
};
return Page();
}
}
HTML:
<form asp-page="AdjournHearing" method="post" name="AdjournHearingScreen" id="AdjournHearingForm">
@if (!Model.ModelState.IsValid)
{
<div class="row">
<div class="col-md-offset-2 col-md-10">
<h3 class="text-danger">Validation Errors</h3>
@*@Html.ValidationSummary(true, "", new { @class = "text-danger"})*@
<div asp-validation-summary="All"></div>
</div>
</div>
}
<div class="container">
<h1 class="mt-4 mb-3">
<button asp-page-handler="Back" class="btn btn-secondary">Back</button>
</h1>
<div class="row">
<div>
<h4>Case: @Model.HearingDetail.CaseName</h4>
<h5>
Hearing: @Model.HearingDetail.Name
</h5>
<div class="row">
<div class="card RoundedCorners">
<h6>Hearing Date: @Model.NewestHearingDate.ToString("g")</h6>
<div class="form-group">
<label asp-for="adjournHearingInfo.newHearingDate" class="control-label"></label>
<input asp-for="adjournHearingInfo.newHearingDate" class="form-control" />
<span asp-validation-for="adjournHearingInfo.newHearingDate" class="text-danger"></span>
</div>
<div class="" style="padding:1em 0 0 0;">
<button id="SubmitButton" class="btn btn-primary" type="submit"> Submit </button>
<button id="SubmitButtonDisabled" disabled style="display:none" class="btn btn-primary" type="submit"> Submit </button>
</div>
</div>
</div>
</div>
</div>
</div>
<input asp-for="HearingDetail.HearingID" type="hidden" />
</form>
【问题讨论】:
标签: c# html asp.net-mvc razor