sqlite - 如何修复 Xamarin.Forms 中的 DateTime 更新问题?
问题描述
我正在使用 xamarin 表单。我在 SQLite 更新中的日期时间字段上有一些问题。
我正在使用的下表:
public class DataTable
{
[PrimaryKey, AutoIncrement]
public int ID { get; set; }
public int WorkOrderId { get; set; }
public Nullable<DateTime> TargetDateTime { get; set; }
}
对于 DatePicker.Date,我在设计中使用 DatePicker 并选择任何日期:
DateChange dateChange=new DateChange();
dateChange.WorkOrderId=1;
dateChange.RescheduleDate=DatePicker.Date;
AddMwoReschedule(dateChange);
这是更新语句,我正在使用:
public List<EngMwoReschedulingTxn> AddMwoReschedule(DateChange dateChange)
{
DateTime dt = new DateTime();
dt = dateChange.RescheduleDate;
conn.Query<DataTable>("update DataTable set TargetDateTime='" + dt + "' where WorkOrderId='"+engMwoReschedulingTxn.WorkOrderId+"'");
}
结果:
表DataTable的更新TargetDateTime如下所示:01-01-0001 00:00:00
谁能帮我解决这个问题?
解决方案
使用 LinQ 代码可以正常工作。我正在使用这样的查询: conn.Query("update DataTable set TargetDateTime='" + dt.Ticks + "' where WorkOrderId='"+engMwoReschedulingTxn.WorkOrderId+"'");
推荐阅读
- android - 正确处理禁用/只读文本框以实现可访问性
- ios - 动态大小嵌套的 UIStackView
- c# - 有没有一种在 Visual Studio 之外编辑代码分析规则集的好方法
- java - Impala 单个插入语句创建多个文件
- ios - iOS 12 - oneTimeCode OTP 委托
- javascript - 淘汰赛点击绑定不会在点击时触发
- java - DataVirt 错误“MSC000001:无法启动服务 jboss.web.deployment.default-host 服务 jboss.web.development.default-host 中的启动异常。/”
- c# - DDD、CQRS 和 Mediatr 查询过滤
- css - React-Bootstrap 居中选项卡
- bash - 如何使用 Mac OS X 上的命令行从另一个用户的私人 Github 存储库下载(仅文件)?