千家信息网

.NET 6的DateOnly和TimeOnly类型怎么用

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,这篇文章主要介绍了.NET 6的DateOnly和TimeOnly类型怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇.NET 6的DateOnly和TimeOnly
千家信息网最后更新 2026年11月02日.NET 6的DateOnly和TimeOnly类型怎么用

这篇文章主要介绍了.NET 6的DateOnly和TimeOnly类型怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇.NET 6的DateOnly和TimeOnly类型怎么用文章都会有所收获,下面我们一起来看看吧。

    前言:

    在.NET 6之前,没有方法来直接表示没有时间的日期(比如生日)或者没有日期的一天中的时间(比如闹钟)。

    虽然我们可以使用DateTime类和TimeSpan类来代替,但是实际使用中会存在一些问题:

    var dateOnly = new DateTime(2021, 10, 1);//输出2021/10/1 0:00:00//问题:还是有时间,并不能代表0点出生var timeOnly = new TimeSpan(11, 22, 0).Add(TimeSpan.FromHours(24));//输出1.11:22:00//问题:过了24小时,应该还是当前时间,实际带了天数

    因此,.Net 6引入了DateOnly和TimeOnly结构,可以存储日期和时间

    举例

    1.创建实例

    我们可以直接创建DateOnly或者TimeOnly的实例:

    var dateOnly = new DateOnly(2021, 10, 1);//输出10/1/2021var timeOnly = new TimeOnly(11, 22, 0);//输出11:22 AM

    还可以使用FromDateTime方法从DateTime实例中生成:

    var datetime = new DateTime(2021, 10, 1, 10, 1, 0);var dateOnly = DateOnly.FromDateTime(datetime);var timeOnly = TimeOnly.FromDateTime(datetime);

    还可以使用FromTimeSpan方法从TimeSpan实例中生成TimeOnly:

    var timeSpan = new TimeSpan(11, 22, 0); var timeOnly = TimeOnly.FromTimeSpan(timeSpan);

    2.类型转换

    反之,可以使用ToDateTime方法将DateOnly实例转换成DateTime:

    var dateOnly = new DateOnly(2021, 10, 1);var timeOnly = new TimeOnly(11, 22, 0);var datetime = dateOnly.ToDateTime(timeOnly);//输出10/1/2021 11:22:00 AM

    可以看到,必须同时带上TimeOnly实例才能转换。

    也可以使用ToTimeSpan方法将TimeOnly实例转换成TimeSpan:

    var timeOnly = new TimeOnly(11, 22, 0);var timeSpan = timeOnly.ToTimeSpan();//输出11:22:00

    3.操作

    DateOnly和TimeOnly类型还提供了比较运算符(例如<和>)和AddXXX方法进行操作:

    var noon = new TimeOnly(12, 0);if (now < noon){    //早上    ...}dateOnly = dateOnly.AddDays(7);timeOnly = timeOnly.AddHours(24);

    需要注意的是:仅仅TimeOnly类型支持-运算符,获得TimeSpan时间间隔。

    结论:

    DateOnly和TimeOnly的引入并不意味着DateTime将不再有用,只是将它们用在不同场景。

    关于".NET 6的DateOnly和TimeOnly类型怎么用"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对".NET 6的DateOnly和TimeOnly类型怎么用"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。

    类型 实例 方法 时间 输出 日期 知识 问题 内容 实际 篇文章 运算符 还是 中生 运算 不同 代表 价值 前言 只是 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技有限公司 互联网科技公司的优势 合肥互联网科技公司 亿策互联网科技 银优互联网科技有限公司 米客互联网科技 上海卓越科技 互联网 互联网科技英文翻译 互联网金融监管科技 华脉科技工业互联网产品 汉立互联网科技有限公司联系电话 中盈科技互联网信息有限公司 武汉健翔互联网络科技有限公司 昊天互联网科技有限公司 赶超互联网科技 微信多开 智帮互联网科技公司最近动向 35岁以上互联网科技行业 互联网时代高科技布局 北京军民互联网科技公司 互联网领先科技成果宣传视频 世界互联网领先科技成果 银优互联网科技有限公司 齐家互联网科技有限公司 太原新华互联网科技学校怎么样 互联网对科技的发展 中国互联网十大科技股排名 互联网科技大赛获奖感言 伊宁互联网科技做什么的 山东子淼互联网科技有限公司 九思连强互联网电子科技有限公司
    0