我正在为 SharePoint (Schema.xml) 中的事件列表编写一个视图,并且我想根据 DateTime 过滤结果(即仅显示在 2 个日期之间开始的事件)
通常我会使用像这样的 CAML 查询,例如:
<Where>
<And>
<Geq>
<FieldRef Name="Event_x0020_Start_x0020_Date" />
<Value Type=”DateTime”>2009-10-10T10:00:00Z</Value>
</Geq>
<Leq>
<FieldRef Name="Event_x0020_Start_x0020_Date" />
<Value Type=”DateTime”>2009-11-10T10:00:00Z</Value>
</Leq>
</And>
</Where>
但是,在这种情况下,我想比较的日期不能直接在字段中使用,我必须从查询字符串中获取它们。
我尝试使用
<Value Type="DateTime">
<GetVar Scope="Request" Name="Start" />
</Value>
<Value Type="DateTime">
<GetVar Scope="Request" Name="End" />
</Value>
其中 Start 和 End 是查询字符串中的 2 个日期(我尝试了每种日期格式,有无 Type="DateTime"),但我总是得到空结果。当我硬编码我的日期(比如 2009-10-10T10:00:00Z)时,查询工作正常。
我可以控制我在查询字符串中发送的内容,因此如果有其他方法,我可以更改它。
那么有没有办法在查询字符串中获取 DateTime 格式?如果没有,我还有其他选择吗?
谢谢!