[英]Query on Date Fields using CAML
我試圖對一個共享點列表(使用客戶端對象模型)運行查詢,找到一個與日期字段匹配的項目。
我的查詢是:2012-07-24T02:50:28 1
我知道列表中有一個項目,其中EmDateSent字段的值是2012-07-24T02:50:28,但是當我運行它時,我得到了0行。
花了數小時進行研究和實驗后,我發現我使用的日期格式確實有效-大概是這樣。 看來現在沒有。
我的代碼如下。
有人可以建議我嘗試一下嗎?
CamlQuery camlQuery = new CamlQuery();
camlQuery.ViewXml = String.Format(
@"<View>
<Query>
<Where>
<Eq>
<FieldRef Name='{0}'/>
<Value Type='DateTime' IncludeTimeValue='True'>{1}</Value>
</Eq>
</Where>
</Query>
</View>", EMAIL_FIELD_DATE_SENT, details.DateSent.HasValue ? details.DateSent.Value.ToString("yyyy-MM-ddTHH:mm:ss") : "");
ListItemCollection listItems = upLoadList.GetItems(camlQuery);
_context.Load(listItems);
_context.ExecuteQuery();
if (listItems.Count > 0) // At this point I expect listItems.Count to be 1, but it is 0
{
....
您的示例看起來正確,並且在時間戳中使用“ T”沒有問題。 但是,據我發現,像您一樣的大多數示例都使用SPQuery
類而不是CamlQuery
類 。 我相信這是造成您問題的原因。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.