使用npgsql从postgresql中读取日期值时出现以下错误:
This expression was expected to have type
DateTime
but here has type
NpgsqlTypes.NpgsqlDate
现在npgsql文档引用了一个显式的运算符:
[C#]
public static explicit operator DateTime(
NpgsqlDate date
);
但是我无法弄清楚如何从F#访问它。
有几种方法可以实现我的需要,但我感到很失望和沮丧,因为我无法找到一种方法来访问内置的演员阵容。
我尝试了旧的Convert.ToDateTime(...),但即使这样也不行。
有人知道吗? THX。
答案 0 :(得分:3)
显式转换运算符可以通过调用op_Explicit
(我之前的注释中的套管错误;我之前没有尝试过)来触及类型:
let date = NpgsqlDate.op_Explicit npgsqlDate
我还发现了各种各样的地方(比如严翠的博客here),为方便起见,为{all}明确转换定义了一个F#运算符!>
,所以你可以说
let date = !> npgsqlDate
我认为这是一种非常巧妙的方式。