Xamarin.Fomrs SQLite DateTime 未通过查询正确插入

问题描述

在我的 Xamarin.Forms 应用程序中,我在 api 端生成查询,我想直接在我的本地数据库中执行它。

我有一张这样的桌子。

[Table("TblUnit")]
public class TblUnit
{
    [AutoIncrement,PrimaryKey]
    public int Id { get; set; }
    public string Name { get; set; }
    public string Description { get; set; }
    public bool IsFavourite { get; set; }
    public int WebId { get; set; }
    public int CompanyId { get; set; }
    public DateTime openingStockDate { get; set; }
}

当我尝试使用 InsertAsync(object) 方法添加对象时,对象以正确的日期插入。但是当我尝试触发查询时,日期没有添加数据库中。当我尝试从此表中获取数据时触发查询后,openingStockDate 变为 01/01/0001

//this is generated at api side and I directly want to fire query in my local sqlite db
var query = "insert into [TblUnit] (Name,Description,IsFavourite,WebId,CompanyId,openingStockDate) values('Bag','Description',true,12,185,'2021-03-04 10:00:00')";

我也尝试将日期格式更改为 mm/dd/yyyy。但没有成功。

我尝试将 storeDateTimeAsTicks 标志设置为 false。

 static readonly Lazy<sqliteAsyncConnection> lazyInitializer = new Lazy<sqliteAsyncConnection>(() =>
    {
        return new sqliteAsyncConnection(Constants.DatabasePath,Constants.Flags,false);
    });

但随后我的整个应用程序开始出现错误。我无法从该表中获取数据。它显示日期时间解析异常。也不能使用 InsertAsync 方法向表中添加数据。

在这里做错了什么?请告诉我。

谢谢

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)