msgraph-sdk-php
msgraph-sdk-php copied to clipboard
[2.0.0-RC13] TransitiveMemberOfRequestBuilder ignoring QueryParameters select
Upon creating a TransitiveMemberOfRequestBuilder and applying a TransitiveMemberOfRequestBuilderGetRequestConfiguration->queryParameters->select I can see the URL is changed to include the $select fields in odataNextLink. But when I actualy run the query with get($groupsRequestConfig) the additional fields are not returned.
If I take the URL and put it into graph explorer, it returns the fields as requested.
Sample code and var_dump's
<?php
$groupsRequest = $GraphServiceClient->me()->transitiveMemberOf();
$groupsRequestConfig = new TransitiveMemberOfRequestBuilderGetRequestConfiguration();
$groupsRequestConfig->queryParameters = new TransitiveMemberOfRequestBuilderGetQueryParameters();
$groupsRequestConfig->queryParameters->select = [
'id',
'samAccountName',
'displayName',
'groupTypes',
'securityEnabled'
];
$groupsResponse = $groupsRequest->get($groupsRequestConfig); # Http\Promise\FulfilledPromise
$groups = $groupsResponse->wait(); # Microsoft\Graph\Generated\Models\DirectoryObjectCollectionResponse
$myGroups = []
foreach ($groups->getValue() as $g) {
$myGroups[] = $g->getDisplayName();
}
/*
$groups = object(Microsoft\Graph\Generated\Models\DirectoryObjectCollectionResponse)#302 (1) {
["backingStore":"Microsoft\Graph\Generated\Models\BaseCollectionPaginationCountResponse":private]=>
object(Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore)#298 (4) {
["isInitializationCompleted":"Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore":private]=>
bool(true)
["returnOnlyChangedValues":"Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore":private]=>
bool(false)
["store":"Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore":private]=>
array(3) {
["additionalData"]=>
array(3) {
[0]=>
bool(false)
[1]=>
array(1) {
["@odata.context"]=>
string(117) "https://graph.microsoft.com/v1.0/$metadata#directoryObjects(id,samAccountName,displayName,groupTypes,securityEnabled)"
}
[2]=>
int(1)
}
["odataNextLink"]=>
array(2) {
[0]=>
bool(false)
[1]=>
string(303) "https://graph.microsoft.com/v1.0/me/transitiveMemberOf?$select=id%2csamAccountName%2cdisplayName%2cgroupTypes%2csecurityEnabled&$skiptoken=R..."
}
["value"]=>
array(3) {
[0]=>
bool(false)
[1]=>
array(100) {
[0]=>
object(Microsoft\Graph\Generated\Models\Group)#194 (1) {
["backingStore":"Microsoft\Graph\Generated\Models\Entity":private]=>
object(Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore)#193 (4) {
["isInitializationCompleted":"Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore":private]=>
bool(true)
["returnOnlyChangedValues":"Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore":private]=>
bool(false)
["store":"Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore":private]=>
array(6) {
["additionalData"]=>
array(3) {
[0]=>
bool(true)
[1]=>
array(0) {
}
[2]=>
int(0)
}
["odataType"]=>
array(2) {
[0]=>
bool(true)
[1]=>
string(22) "#microsoft.graph.group"
}
["id"]=>
array(2) {
[0]=>
bool(true)
[1]=>
string(36) "b...4"
}
["displayName"]=>
array(2) {
[0]=>
bool(true)
[1]=>
NULL
}
...
$g = object(Microsoft\Graph\Generated\Models\Group)#556 (1) {
["backingStore":"Microsoft\Graph\Generated\Models\Entity":private]=>
object(Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore)#555 (4) {
["isInitializationCompleted":"Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore":private]=>
bool(true)
["returnOnlyChangedValues":"Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore":private]=>
bool(false)
["store":"Microsoft\Kiota\Abstractions\Store\InMemoryBackingStore":private]=>
array(6) {
["additionalData"]=>
array(3) {
[0]=>
bool(true)
[1]=>
array(0) {
}
[2]=>
int(0)
}
["odataType"]=>
array(2) {
[0]=>
bool(true)
[1]=>
string(22) "#microsoft.graph.group"
}
["id"]=>
array(2) {
[0]=>
bool(true)
[1]=>
string(36) "8...8"
}
["displayName"]=>
array(2) {
[0]=>
bool(true)
[1]=>
NULL
}
....
*/
?>
PS. Please create more documentation, this sdk is a monster for having so little documentation and examples.