使用电子邮件 ID c# 查询个人或组字段的 CAML

CAML Query for Person or Group Field using email ID c#

我在 SharePoint 列表中有一个人员选择器列,我想在人员选择器列中获取具有特定用户的项目。但我只有一个人的电子邮件 ID,所以如何使用电子邮件 ID 获取项目。我正在使用以下查询。

camlQuery.ViewXml = "<View><Query><Where><Eq><FieldRef Name='Name' LookupId='TRUE' />" +"<Value Type='User'>"+ EmailID + "</Value></Eq></Where></Query></View>";

但它没有给我一个列表。

我们无法使用电子邮件 ID 直接查询人员选择器列,作为解决方法我已使用以下步骤。

  1. 获取用户电子邮件 ID
  2. 将电子邮件 ID 传递给
    web.SiteUsers.GetByEmail(EmailID);```
 3. Now in getUser object we get user display name. Pass that display
    name to caml query.

```camlQuery.ViewXml = "<View><Query><Where><Eq><FieldRef Name='Name'/>" +"<Value Type='Text'>" + getUser.Title + "</Value></Eq></Where></Query></View>";```