Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/sharepoint/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sharepoint 具有多个值的CAML人员或组字段_Sharepoint_Sharepoint 2010_Sharepoint 2007 - Fatal编程技术网

Sharepoint 具有多个值的CAML人员或组字段

Sharepoint 具有多个值的CAML人员或组字段,sharepoint,sharepoint-2010,sharepoint-2007,Sharepoint,Sharepoint 2010,Sharepoint 2007,我在Sharepoint列表中有一个名为TargetedPeople的字段。这是可以有多个值的个人或用户组 我用于查询的CAML是 siteDataQuery.Query = @"<Where><Includes><FieldRef Name='TargetedPeople' LookupId='TRUE'/><Value Type='Integer'>" + webInContext.CurrentUser.ID + "</Value>

我在Sharepoint列表中有一个名为TargetedPeople的字段。这是可以有多个值的个人或用户组

我用于查询的CAML是

siteDataQuery.Query = @"<Where><Includes><FieldRef Name='TargetedPeople' LookupId='TRUE'/><Value Type='Integer'>" + webInContext.CurrentUser.ID + "</Value></Includes></Where>";
siteDataQuery.Query=@“+webInContext.CurrentUser.ID+”;
如果我们在字段中为“否”设置了“允许多个选择”,则该选项可以正常工作。但如果设置为“是”,这似乎不适用于


请与我分享如何查询多个字段。

经过一些更改后,我能够理解这一点。如果字段有多个值,我们应该将值类型定义为LookupMulti。下面是工作代码示例

siteDataQuery.Query = @"<Where><Contains><FieldRef Name='TargetedPeople' LookupId='TRUE'/><Value Type='LookupMulti'>" + webInContext.CurrentUser.ID + "</Value></Contains></Where>";
siteDataQuery.Query=@“+webInContext.CurrentUser.ID+”;

经过一些修改后,我终于明白了这一点。如果字段有多个值,我们应该将值类型定义为LookupMulti。下面是工作代码示例

siteDataQuery.Query = @"<Where><Contains><FieldRef Name='TargetedPeople' LookupId='TRUE'/><Value Type='LookupMulti'>" + webInContext.CurrentUser.ID + "</Value></Contains></Where>";
siteDataQuery.Query=@“+webInContext.CurrentUser.ID+”;

也可以工作,看起来更简单(在SP Online上测试):


也可以工作,看起来更简单(在SP Online上测试):