Невозможно выполнить поиск пользователей Microsoft Graph Api V1.0, используя шаблон поиска по шаблону - PullRequest
1 голос
/ 28 февраля 2020

Я пытаюсь найти пользователей по совпадению с регулярным выражением с использованием подстановочного знака, используя приведенный ниже фрагмент кода:

var users = await graphServiceClient.Users.Request().Select(e => new {
    e.DisplayName,
    e.GivenName,
    e.PostalCode
}).Filter(RegexMatch(DisplayName("Rob.* Thomas")
).GetAsync();

Итак, приведенное выше должно соответствовать пользователю "Robert Thomas", а RegexMatch в данный момент недоступен в списке ключевых слов фильтра, Я только что использовал в качестве примера для достижения этой задачи. Ниже должно соответствовать Robin Thomas: - Filter (RegexMatch (DisplayName ("Robi.? Thomas")), а также в случае поиска UserPrincipalName и поиска id et c.

Я хочу добиться некоторых похожих результатов, но не удалось найти поиск регулярных выражений в документации MS Graph V1.0.

Пожалуйста, помогите мне с сопоставлением регулярных выражений с использованием MS Graph API V1.0

1 Ответ

2 голосов
/ 29 февраля 2020

Microsoft Graph V1.0 в настоящее время не поддерживает подстановочные знаки, такие как * или %like%, хотя есть опция $search, которая в настоящее время поддерживается только для messages и person коллекции.

Work Around:

Можно попробовать ниже

         var users = await graphServiceClient.Users
        .Request()
        .Filter("startswith(displayName,'Rob') and startswith(UserPrincipalName ,'Thomas')")
        .Select( e => new {
                 e.DisplayName,
                 e.GivenName,
                 e.PostalCode
                 })
        .GetAsync();

Note: Вы можете связать несколько предложений and, or для выполнения пользовательского поиска.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...