我正在创建一个方法,将最后一个事务插入到litedb中。
我确实有一个日期字符串,保存。
这是班级:
public class TransactionPair:TransactionTwo{ …
默认情况下,LiteDB中的记录按主键排序( _id 默认情况下)查询它们时。从您提供的代码我无法分辨主键是什么数据类型,但如果它是一个整数而不是手动设置,那么您可以只查找最后一条记录:
_id
collection.FindOne(Query.All(Query.Descending))
如果不保证主键有序(例如,如果数据类型为 Guid ),那么你需要使用另一种方法。不幸的是,我不认为DateString会有多大帮助:任何对它排序的查询都会按字母顺序排序,而不是按时间顺序排序。如果可能的话,我建议使用 DateTime 用于存储当前时间戳的属性,而不是将其存储为 string 。这样做可以让您轻松地对记录进行排序,例如:
Guid
DateTime
string
collection.EnsureIndex("Timestamp"); collection.FindOne(Query.All("Timestamp", Query.Descending));
Guid包含一些RawValue信息,如CreationTime(system.datetime),Increment,Machine,Pid,Timestamp。也许你可以在查询中使用它们。