CAML查询 - 如何比较DateTime的查找值

时间:2013-05-09 09:54:39

标签: datetime lookup caml

我需要一个CAML查询来比较查找值而不是ID。我的查找值是DateTime。 startTime和endTime都是DateTime。

以下代码有问题。 我在网上搜索,但我找到的只有Type = DateTime而不是Lookup。

           "<Where>" +
                "<And>" +
                    "<Lt>" + 
                        "<FieldRef Name='" + EventSessionStartTime + "' />" +
                        "<Value Type='Lookup' IncludeTimeValue='TRUE'>" + endDate + "</Value>" +
                    "</Lt>" +
                    "<Gt>" +
                        "<FieldRef Name='" + EventSessionEndTime + "' />" +
                        "<Value Type='Lookup' IncludeTimeValue='TRUE'>" + startDate + "</Value>" +
                    "</Gt>" +
                "</And>" +
            "</Where>";

1 个答案:

答案 0 :(得分:1)

找到答案。使用上述查询进行比较是完全可以的。它将检索列表中的日期和时间。

  1. 确保您的内部列名称不会太长,因为sharepoint有其限制。
  2. 确保您的日期是标准化的。您可能不会使用C#给出的时间格式。我使用SPUtility.CreateISO8601DateTimeFromSystemDateTime((DateTime)date)来标准化它。