使用数据注释进行日期时间(日期和时间)验证

2024-03-21

我有以下代码:

        [DisplayName("58.Date and hour of birth")]
        [DataType(DataType.DateTime, ErrorMessage = "Please enter a valid date in the format dd/mm/yyyy hh:mm")]
        [Range(typeof(DateTime), "1/1/2011", "1/1/2016")]
        [RequiredToClose]
        public object V_58 { get; set; }

我想强制包含时间(格式为 hh:mm)而不仅仅是日期。此代码认为 1/1/2011 有效,但实际上不应该,因为它不包含小时,关于如何表达正确格式的任何线索? (日/月/年 时:分)


你可以自己写ValidationAttribute并用它装饰房产。您覆盖IsValid方法与你自己的逻辑。

public class MyAwesomeDateValidation : ValidationAttribute
{
    public override bool IsValid(object value)
    {
        DateTime dt;
        bool parsed = DateTime.TryParse((string)value, out dt);
        if(!parsed)
            return false;

        // eliminate other invalid values, etc
        // if contains valid hour for your business logic, etc

        return true;
    }
}

最后,装饰你的财产:

[MyAwesomeDateValidation(ErrorMessage="You were born in another dimension")]
public object V_58 { get; set; }

注意:要警惕属性上的多个验证属性,因为如果没有更多自定义,则无法确定它们的评估顺序,随后如果验证逻辑重叠,您的错误消息可能无法准确描述您的错误到底是什么与财产(是的,这是一个连续的句子)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用数据注释进行日期时间(日期和时间)验证 的相关文章

  • Unity IoC 和 MVC 3 Beta - 将 IRepository 传递给控制器​​构造函数

    MVC 3 中有什么变化吗 我已经尝试了互联网上所有将 Unity 设置为我的 IoC 容器的示例 但我不断收到错误消息 指出 Unity 无法解析我的 UserController 这是我的 UserController 上的构造函数 p
  • Ajax.BeginForm 无法与 Html.ValidationSummary 一起使用

    我正在尝试使用 Ajax BeginForm 将数据发布到控制器 如果出现特定错误 表单应重新呈现并显示添加到 ModelState 的自定义错误消息 由于某种原因 错误消息未显示 我什至正在尝试以下不起作用的测试用例 我是否遗漏了什么 E
  • 我无法在剃刀视图中设置断点

    我知道可以在 MVC Razor 视图中设置断点 但出了点问题 它不再工作了 我尝试重新启动 Visual Studio 2013 并更改调试的一些选项 你有什么建议吗 感谢弗拉基米尔 我能找到解决方案 我必须清理并重建整个解决方案 我之前
  • Drupal Views 如何过滤与日期范围重叠的项目

    在 Drupal 中 我使用 CCK 将日期时间字段添加到我的自定义数据类型中 它插入开始日期和结束日期字段 这就是我想要的 现在 我希望视图过滤并仅显示日期范围 开始日期和结束日期 与今天日期重叠的项目 关于如何在视图上设置它有什么想法吗
  • DynamoDB 中的时间戳应使用什么数据类型?

    我是 DynamoDB 新手 我希望创建一个使用 DeviceID 作为哈希键 时间戳作为范围键和一些数据的表 DeviceID 123 Timestamp 2016 11 11T17 21 07 5272333Z X 12 Y 35 在
  • 如何持久化传递给局部视图的数据模型?

    为了说明我面临的问题 我整理了三个简单的数据模型 public class PersonalModel public string FirstName get set public string LastName get set publi
  • 使用 CustomUrlHelper 覆盖 UrlHelper - ASP.NET CORE 2.0

    有没有办法强制我的 ASP NET Core 2 0 应用程序使用我在各处编写的自定义 UrlHelper 我有一个具有自定义逻辑的类 public class CustomUrlHelper UrlHelper 我希望它能在任何地方使用
  • System.Web.Mvc.HtmlHelper 不包含以下定义

    我正在尝试使用史蒂夫 桑德森的博客文章 http blog stevensanderson com 2010 01 28 editing a variable length list aspnet mvc 2 style 关于编辑可变长度列
  • Java 8,为什么不是 ZonedTime 类?

    我发现 Java 8 没有等效的分区日期时间 http docs oracle com javase 8 docs api java time ZonedDateTime html但只能与Time a 分区时间类或类似的东西 I know他
  • 如何在 Asp.Net MVC 上实现客户端 Ajax 登录(Asp.Net Webforms 解决方案的链接位于此处)

    我正在尝试在 Asp Net MVC 上实现客户端 ajax 登录 我以前在 WebForms 上设置得很好 但现在我已经转向 MVC 这给我带来了一些麻烦 如果您想要有关 Asp Net Webforms 的客户端 Ajax 登录的教程
  • 使用 ASP.NET MVC Linq To SQL 进行验证:如何避免编辑生成的源?

    我正在阅读一些关于验证的文档ASP NET MVC 忽略那些建议重新发明轮子编写自己的验证逻辑的人 大多数文章提倡使用xVal或数据注释验证器 两者都允许通过装饰模型的属性 进行声明性验证 我想我会去xVal 因为它似乎是最受建议的 因此
  • Azure 网站中的 404 处理

    我在 Azure 上有一个 MVC 网站 我已经编写了一个控制器操作来代表资源 该操作应该返回 HTTP 404 但正文内容应该是一些 HTML 我在其中解释了 404 的原因 这是作为一个标准操作实现的 该操作设置Response Sta
  • grails/mysql 时区更改

    完成更改应用程序时区的最佳方法是什么 在我看来 必须发生以下情况 服务器 TZ 已被系统管理员更改 mysql必须重新启动 数据库中每个基于时间的列都必须使用convert tz 或等效方法更新所有值 因此 要么必须编写一个 mysql 脚
  • Django 查询:“datetime + delta”作为表达式

    好吧 我的问题如下 假设我有下一个模型 这是一个简单的情况 class Period models Model name CharField field specs here start date DateTimeField field s
  • MVC4更新部分视图

    我正在开发一个简单的 MVC 应用程序 我有主视图 部分视图和控制器 这是我的主要视图 model partitalViewTest Models Qset div class transbox style height 1 Html Pa
  • 使用 OWIN Identity 注册来自多个 API 客户端的 Web API 2 外部登录

    我想要以下架构 我为本示例编写了产品名称 在一台服务器上运行的 Web API 2 应用程序 http api prettypictures com http api prettypictures com 在另一台服务器上运行的 MVC 5
  • 如何在 Java 中向时间戳添加/减去时区偏移量?

    我正在使用 JDK 8 并且玩过ZonedDateTime and Timestamp很多 但我仍然无法解决我面临的问题 假设我得到了格式化的Timestamp在格林威治标准时间 UTC 我的服务器位于某处 假设它设置为Asia Calcu
  • 仅为登录用户显示菜单项

    我是 ASP NET MVC 新手 正在使用该框架的 1 0 版本 我有一个 site master 页面 其中包含以下硬编码菜单 div ul li li li li li li li li ul div
  • MVC5 实体框架的问题

    我在我的 Web 应用程序中使用 Visual Studio 2013 中的 ASP NET MVC5 Entity Framework 6 我正在尝试我的模型工作 但由于某种原因而出现错误 我已经尝试过 Fluent API 和它自己的模
  • Asp.Net Mvc 无法注销

    这是我的登录代码 var expire DateTime Now AddDays 7 Create a new ticket used for authentication var ticket new FormsAuthenticatio

随机推荐

  • 我应该如何在 axios GET 请求中发送 JWT 令牌? [复制]

    这个问题在这里已经有答案了 我是 Vue js 新手 想要在组件中向受限 api 发出请求 computed token return this store getters getToken created axios get this B
  • 函数构造函数和原型构造函数有什么区别?

    我想知道这有什么区别 MyClass function MyClass prototype Foo function and this MyClass MyClass prototype constructor function MyCla
  • 如何在androidsharedPreference中存储类对象?

    我想将类对象存储在android共享首选项中 我对此进行了一些基本搜索 得到了一些答案 例如使其可序列化对象并存储它 但我的需求非常简单 我想存储一些用户信息 例如姓名 地址 年龄和布尔值是否处于活动状态 我为此创建了一个用户类 publi
  • asp.net mvc 按名称和区域查找控制器

    我的目标是从控制器的名称和区域中找到控制器 如果我当前的httpContext与待找到的控制器位于同一区域内 但是 我无法拨打电话ControllerFactory考虑面积 这是我的代码 public static ControllerBa
  • 匹配 JavaScript 中除特定模式之外的所有内容

    经过多次搜索 我仍然感到困惑 如何匹配字符串中除与给定模式匹配的内容之外的所有内容 我找到了使用以下方法否定特定单词或字符集的解决方案 或负面展望 但我需要一个解决方案来否定任何与特定模式匹配的内容 示例文本 html 片段 abcd ef
  • java.lang.IllegalStateException:指定的子级已经有父级

    当我第一次实例化一个片段时 我正在使用片段 但第二次我遇到了这个例外 我找不到出错的行 04 04 08 51 54 320 E AndroidRuntime 29713 FATAL EXCEPTION main 04 04 08 51 5
  • GPU 上非原子写入的保证很弱吗?

    OpenCL 和 CUDA 包含原子操作已有好几年了 尽管显然并非每个 CUDA 或 OpenCL 设备都支持这些操作 但是 我的问题是关于由于非原子写入而 共存 种族的可能性 假设网格中的多个线程都写入全局内存中的同一位置 我们是否可以保
  • Swing 如何以编程方式关闭 JPanel

    我的主类扩展了 JPanel 我在这个面板上创建了一个表格和一个按钮 现在我想在用户按下它时关闭这个面板 互联网上的关闭示例是关于 JFrame 的 JPanel 有解决方案吗 有一个面板 面板上有一个表格和一个按钮 我向按钮添加一个动作侦
  • 上传图片并上传后查看

    我正在尝试在 Angular 5 2 和 Laravel 5 5 中上传个人资料图片 我可以成功地将图像上传到本地存储中的单独文件夹 然后我想像在 Facebook 中一样显示上传的图像 然后我可以查看上传的图像 但它没有上传到文件夹 这是
  • Django - 新字体?

    如何使用 Django 安装新字体 文档中没有提及这一点 我将字体安装在静态文件夹中 例如 fonts abc ttf 例如 在模板中 如果这是一个 CSS 我会这样链接它 但这不是 CSS 而且我还没有找到任何有关如何执行此操作的资源 我
  • Java 中的最终接口?

    Java中的接口可以声明为final吗 接口是 100 抽象的 创建接口实例的唯一方法是实例化实现它的类 允许接口final完全没有意义 EDIT这些问题并不像我最初想象的那么令人震惊 最终接口是不能由其他接口扩展但表面上可以实现的接口 我
  • Google 电子表格脚本问题 - 错误:服务超时:Apps 脚本

    我一直在尝试编写一个快速的谷歌脚本来计算婚礼邀请回复电子表格的回复人数 随着新条目添加到电子表格中 该脚本完美运行了一周 然后突然停止工作 每个单元格中出现以下错误消息 错误 服务超时 Apps 脚本 脚本本身很简单 它查询相关列 有多个事
  • Google App Engine 尝试访问开发数据

    我在本地计算机上运行我的应用程序 并使用远程 API 访问生产端的数据存储区 一切都工作得很好 直到我尝试在谷歌应用程序引擎启动器中添加第二个应用程序 我相信这就是导致问题的原因 因为我必须将我正在处理的内容与一些更新的代码合并 并想在我去
  • 如何在 Flutter 中单击另一个扩展图块后折叠已打开的扩展图块?

    我在我的应用程序中使用多个扩展图块 我需要在单击另一个图块后关闭已打开的图块 我尝试过使用默认情况下具有该功能的扩展面板 但我需要重新设计扩展瓷砖 所以我使用扩展瓷砖 如何在扩展磁贴中实现该功能 这个答案在 GitHub 上 https g
  • 如何使用“pip install”运行单元测试?

    在工作中 我们正在考虑配置本地 pypi 存储库以用于内部软件部署 使用 pip install 进行部署会很方便 但我担心添加新包后应该执行单元测试以确保正确安装 我一直认为 pip 正在这样做 但我在 pip 文档中没有看到任何与测试相
  • Phonegap Android 项目适用于模拟器,不适用于实际手机

    我正在运行最新版本的android及其SDK 并且我正在使用phonegap创建移动应用程序 我的问题是 我正在请求 Web 服务 并且在 html 的标签中显示收到的消息的内容 Web 服务工作正常 显示功能工作正常 甚至在模拟器上运行也
  • javascript字符串分割中的正则表达式,浏览器兼容性问题

    我一直在调查这个问题 随着我深入研究 这个问题似乎只会变得更糟 我开始天真地尝试使用这个表达式来分割 HTML br 标签上的字符串 T captions innerHTML split
  • 使用 CCDT 连接到 MQ 服务器

    我正在尝试连接到MQ使用中存在的信息CCDT文件 我目前可以连接到MQ使用所有详细信息 从队列中获取消息以及将消息放入队列中 经过广泛的谷歌搜索后 我无法找到任何允许我使用以下命令进行连接的示例代码CCDT file 我的一位同事向我转发了
  • Xamarin iOS - 缺少所需的文件图标错误 ITMS-90022 和 ITMS-90023

    运行 Xamarin 的最新稳定版本 Xamarin 版本 4 1 1 3 Xamarin iOS 9 8 1 并尝试构建我的 Xamarin Forms 应用程序以发布到 iTunes Connect 进行试飞 尝试为 AppStore
  • 使用数据注释进行日期时间(日期和时间)验证

    我有以下代码 DisplayName 58 Date and hour of birth DataType DataType DateTime ErrorMessage Please enter a valid date in the fo