在sqlite中使用默认当前时间创建一个datetime列

时间:2018-11-29 20:04:55

标签: datetime xamarin xamarin.forms xamarin.android

我有一个sqlite数据对象,说“票”。 我有一些列字段,其中填充了从服务器收到的日期。

我想添加一个datetime列,无论何时创建记录,该列都必须将其值设置为默认的当前日期时间。

public class Ticket : BaseNotifyPropertyChanged
{
    [PrimaryKey, AutoIncrement]
    public int MobileID { get; set; }
    public int TicketID { get; set; }
    //new column to be added with default datetime
    public DateTime test

}

2 个答案:

答案 0 :(得分:2)

尝试一下:

public DateTime test { get; set; } = DateTime.Now;

只有在完全相同的情况下,这才起作用。如果您编写自定义getset,那么我认为您可以为背景字段设置默认值,例如:

DateTime _time = DateTime.Now;
public DateTime Time { 
    get{
        return _time;
    } 
    set {
        if (_time != value) {
            _time = value;

        }
    } 
}

答案 1 :(得分:0)

你可以做

CREATE TABLE mytable 
( 
     MobileID BIGINT (14) NOT NULL, 
     TicketID BIGINT(14) NOT NULL, 
     date     DATETIME NOT NULL DEFAULT (CURRENT_TIMESTAMP), 
     PRIMARY KEY (MobileID, TicketID ) 
);