【发布时间】:2020-03-13 19:57:55
【问题描述】:
我正在尝试将 SQLlite 用于使用 Xamarin.Forms 创建的旅馆预订系统。我想搜索给定 ID 和房间类型的两个日期之间存在的预订记录。
// Count number of bookings between these dates at the hostel for the specified room type
int count = App.Database.CheckValidBooking(hostel_ID, hostel_room_type, DPickerFrom.Date, DPickerTo.Date).Count();
public List<PaidBookings> CheckValidBooking(int ID, string type, DateTime period_start, DateTime period_end)
{
return database.Query<PaidBookings>("SELECT * FROM PaidBookings WHERE ID = ? AND Type = ? AND checkIn >= ? AND checkOut <= ?;", ID, type, period_start, period_end);
}
执行时出现SQL语句出错:
public List<PaidBookings> CheckValidBooking(int ID, string type, DateTime period_start, DateTime period_end)
{
return database.Query<PaidBookings>("SELECT * FROM PaidBookings WHERE ID = ? AND Type = ? AND checkIn >= ? AND checkOut <= ?;", ID, type, period_start, period_end);
}
System.NullReferenceException:对象引用未设置为对象的实例。
我该如何解决这个问题?谢谢。
【问题讨论】:
-
您检查过
database和null的所有参数吗? -
您使用的是什么 ORM?我不太了解语法。
标签: c# sql sqlite xamarin.forms