我想查询文档上的更新时间戳_ts以获取自一段时间以来未发生变异的文档.
当我在azure门户中创建选择查询时,这可以:
SELECT TOP 10 c.id FROM c WHERE c._ts < 6.35909919217878E+17
Run Code Online (Sandbox Code Playgroud)
奇数是使用datetime对象创建的Ticks,见下文.
但是当我尝试通过LINQ创建它时,它不会这样做,因为你没有_ts而是将Timestamp作为DateTime对象.当我尝试输入一个完整的DateTime对象来与Timestamp进行比较时,它会崩溃,说它不支持它.所以我试试这个:
DocRepo.Get(x => x.Timestamp.Ticks < CloseDate.Ticks);
Run Code Online (Sandbox Code Playgroud)
这导致什么都没有,当我看到执行的查询时,它将此作为选择查询:
SELECT * FROM root WHERE root[\"_ts\"][\"Ticks\"] < 6.35909943137688E+17
Run Code Online (Sandbox Code Playgroud)
是否可以查询_ts时间戳或者我必须有一个额外的updatedAt字段来执行它,这似乎是多余的.