如何将 ulong 与 PostgreSQL Entity Framework Core 结合使用?

Joh*_*don 6 c# postgresql .net-core

我知道 Postgre 不支持无符号变量,但在我的应用程序中,我使用一个不断使用 ulong 的包,即使这些值永远不会超过 long 的最大值。

我使用数据库中的数据从 long 到 ulong,而不是在任何地方进行强制转换,是否有一种方法可以允许我的模型使用 ulong,但在它进入数据库之前将其强制转换为 long?我已经尝试过:[DataType("BIGINT")]超过模型中的属性,但它仍然给我错误。

这就是我的模型的样子:

[Table("users")]
public class User
{
    [Key]
    [Column("id")]
    public int Id { get; set; }
    [Column("userid")]
    [DataType("BIGINT")]
    public ulong UserId { get; set; }
    [Column("cash")]
    public double Cash { get; set; } = 0.0;
    [Column("messagecooldown")]
    public NpgsqlTimeSpan MessageCooldown { get; set; } = TimeSpan.FromSeconds(30);

}
Run Code Online (Sandbox Code Playgroud)