Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 让NPOCO考虑数据库默认值_C#_.net_Postgresql_Npoco - Fatal编程技术网

C# 让NPOCO考虑数据库默认值

C# 让NPOCO考虑数据库默认值,c#,.net,postgresql,npoco,C#,.net,Postgresql,Npoco,给定我的数据库(PostgreSQL)中的以下表 我想使用NPoco使用此poco访问数据 [TableName("produkt"), PrimaryKey("id", AutoIncrement = true)] public class Product { [Column("id")] public int Id { get; set; } [Column("name")] public string Name { get; set; } [Co

给定我的数据库(PostgreSQL)中的以下

我想使用NPoco使用此poco访问数据

[TableName("produkt"), PrimaryKey("id", AutoIncrement = true)]
public class Product
{
    [Column("id")]
    public int Id { get; set; }

    [Column("name")]
    public string Name { get; set; }

    [Column("created_at")]
    public DateTime CreatedAt { get; set; }
}
现在,当我打电话时

var product = new Product
{
    Name = "My new Product"
};

Database.Insert(product);  // or Database.Save<Product>(product);
var产品=新产品
{
Name=“我的新产品”
};
数据库。插入(产品);//或数据库。保存(产品);

-列中创建的
-无穷大
,即使已声明
默认值
。有办法解决这个问题吗?另一种选择是在应用程序中设置日期,但我更希望使用数据库中的
默认值来实现此功能。

尝试使用makin CreatedAt nullable:

[列(“创建位置”)]
公共可为空的CreatedAt{get;set;}

或在构造函数中设置其值,如图所示
.

嘿,谢谢你的回答。我尝试了
Nullable
DateTime?
,但都没有成功。也许这是Postgre的问题。我知道,在CTor中设置日期是一种选择,但我更愿意在DB中设置日期以保持一致。无论如何,非常感谢!
var product = new Product
{
    Name = "My new Product"
};

Database.Insert(product);  // or Database.Save<Product>(product);