c# - 如何删除毫秒和文化不变量?
问题描述
我有一个变量,它是来自对象产品的 expiryDate。到期日的属性如下:
public DateTime? ExpiryDate{ get; set; }
日期以下列格式返回:
2020-01-15 11:16:40.6071922
因为我的 ExpiryDate 的 DateTime 可以为空,所以当我尝试这样的事情时:
var expiry = DateTime.ParseExact(products.ExpiryDate, "yyyy/MM/dd HH:mm:ss", null);
我收到以下错误:
CS8604 - DateTime DateTime.ParseExact 中参数“s”的可能空引用参数...
我可以抑制错误,但这不是我想要做的。无论如何都可以删除毫秒而不必转换为字符串。
解决方案
要删除毫秒,您可以执行以下操作:
var expiry = products.ExpiryDate.AddMilliseconds(-products.ExpiryDate.Millisecond);
推荐阅读
- maven - 为 Maven 项目配置 JFrog 工件存储库
- python - 如何使用beautifulsoup获取第一个视频ID?
- html - 内联块父级内的 Flex 子级 - IE11 无法处理布局对齐
- sql - 按年份划分的组内病例百分比
- unicode - 是否有一个大写字母有两个小写字母可供选择?
- c++ - main() 中的 std::cout 在调试期间不在调试控制台中打印任何内容
- gradle - Gradle测试任务执行模式cmdline和intellij之间的不同行为
- javascript - 每次进行克隆时更改每个标签的 ID 的 Javascript 代码是什么?
- snowplow - 使用 Snowplow Micro 验证实体字段
- oracle - Oracle Apex Interactive Report vs Interactive Grid