带有timezone postgresql映射的时间戳

shu*_*ing 6 c# postgresql

如何将postgreSql中的"timestamp with time zone"数据类型映射到System.Data.DbType 我需要传递参数,因为它将转到具有"timestamp with time zone"的列

以下是我的代码:

var pOrderDate = cmdOrder.CreateParameter();
pOrderDate.ParameterName = "OrderDate";
pOrderDate.DbType = System.Data.DbType.DateTime;
pOrderDate.Value = objOrder.OrderDate;
cmdOrder.Parameters.Add(pOrderDate);
Run Code Online (Sandbox Code Playgroud)

以下行导致问题:

pOrderDate.DbType = System.Data.DbType.DateTime;
Run Code Online (Sandbox Code Playgroud)

小智 2

您是否考虑过尝试 .NET 中的 DateTimeOffset 类?

我不知道它如何映射到 Postgres“DateTime with Timezone”类型,但它与我认为的 MSSQL 等效项(也称为 DateTimeOffset)具有 1:1 相关性。

请注意,这里的命名非常糟糕 - 该类型表示 DateTime + Offset,而不仅仅是 Offset 本身。