2017-12-04 6 views
0

Ich arbeite an einer App, die Azure AD abfragen muss. Die Abfrage arbeitet an einigen Feldern, aber auf einigen Feldern wie der Handynummer funktioniert es nicht.Azure Active Directory-Diagramm API Abfrage Benutzer

Abfrage funktioniert, wenn sie mit Namen Filterung

var searchResults = await userCollection.Where(user => 
       (user.UserPrincipalName.StartsWith(searchString) || 
       user.DisplayName.StartsWith(searchString) || 
       user.GivenName.StartsWith(searchString) || 
       user.Surname.StartsWith(searchString) || 
       user.Mail.StartsWith(searchString)) && user.AccountEnabled == true).ExecuteAsync(); 

aber mit Handynummer und anderen Bereichen wirft Ausnahme

var searchResults = await userCollection 
       .Where(x => x.Mobile == "+63 922 3965 021").ExecuteAsync(); 

Hier wird die Ausnahme „Nicht unterstützte oder ungültige Abfrage Filterklausel für Eigenschaft angegeben 'mobil' der Ressource 'Benutzer'. "

Antwort

2

Es gibt einige Eigenschaften, die Sie auf diese Weise abfragen können. Die Linq-Abfrage generiert einen Filter Ausdruck für die Azure AD Graph API. Aber andere, wie die Handynummer, können Sie nicht.

Die Eigenschaften, die filterbar sind, können für Benutzerobjekte in the reference angezeigt werden.

Die Filter, auf die Sie filtern können, sind als solche gekennzeichnet (z. B. die Surname-Eigenschaft: "GET ($ filter)").

+0

es macht keinen Sinn, warum es keine Abfrage sein kann –

+0

Ich weiß. Ich habe es auch gewollt. Sie können eine UserVoice-Anfrage unter https://feedback.azure.com/forums/169401-azure-active-directory/category/165567-graph-api hinzufügen. Übrigens. Die neuere Microsoft Graph-API unterstützt auch keine Filterung auf mobilePhone (die Referenz finden Sie unter https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/user#properties). . – RasmusW

Verwandte Themen