[英]working with dates with F#
我真的是F#的新手。 下面是我尝试创建一个计算两个日期之间的差的函数的尝试。
let test date =
let today = DateTime.Now
let fromdate = DateTime.Parse(date)
let count = Convert.ToInt32(today - fromdate)
date
上面的代码提示错误
System.InvalidCastException:无法将类型为“ System.TimeSpan”的对象转换为类型为“ System.IConvertible”的对象。
两个DateTimes之间的差异将为您提供一个TimeSpan对象 ,您可以在该对象上进一步进行操作。 这应该是函数中的最后一条语句,因为它将用作返回值。 您可以在链接中查看MS文档,以了解各种属性和方法。 严格来说,这是BCL的一部分,因此它是.NET而不是F#(在VB或C#中也是如此)。 如果要进一步优化函数,则还应该检查DateTime.TryParse
并处理未收到有效日期的可能性。
open System
let test date =
let today = DateTime.Now
let fromdate = DateTime.Parse(date)
(today - fromdate).Days
test "2017/12/31" // val it : int = -325
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.