【发布时间】:2020-08-05 20:57:08
【问题描述】:
我在这里看到了Greater Than or Equal To Today Date validation annotation in MVC3 的答案,并尝试使用我的 .Net Core 3.1 应用程序中建议的远程选项。我在我的操作中设置了一个断点,但它从来没有击中它,只是一遍又一遍地抛出验证,而不管输入的日期(或空白)如何。这是我尝试过的:
作为我的数据模型的注释:
[Remote("ValidateDateEqualOrGreater", "AccountViewer", HttpMethod="POST", ErrorMessage = "Date cannot be prior to today's date")]
public DateTimeOffset? PostDate {get; set; }
在我的控制器内部:
[HttpPost]
public JsonResult ValidateDateEqualOrGreater(DateTimeOffset Date)
{
if (Date == null || Date >= DateTimeOffset.UtcNow.Date)
{
return Json(true);
}
return Json(false);
}
似乎根本没有调用代码,因为我没有遇到其中的任何断点。您还需要做什么才能使 Remote() 注释正常工作?
【问题讨论】:
-
你已经看过这个了吗? - docs.microsoft.com/en-us/aspnet/core/mvc/models/…
-
是的,我似乎在做正确的事,但它没有采取行动。
-
基本检查,您确定此调用是从客户端触发的吗?您能从浏览器的网络标签中确认吗?
-
好电话。我刚刚检查并确认它从我的网络选项卡中的 ValidateDateEqualOrGreater 收到了 200 响应
-
能否请您确认一下请求和响应负载?我们正在查看的数据是否有任何机会为空(可能是正在发送到服务器的数据)? 200的情况下响应体是什么?
标签: c# asp.net-core asp.net-core-mvc data-annotations