Azure Active Directory Graph Client 2.0: el contexto actualmente no realiza el seguimiento de la entidad

Recientemente instalé el paquete Nuget de Azure Active Directory Graph Client Library 2.0.2 y no puedo agregar miembros a los grupos, ya sea agregar un grupo a un grupo o agregar un usuario a un grupo. Aparece el siguiente error cuando se llama a la función AddLink :

“[System.InvalidOperationException] = {” El contexto no está actualmente rastreando la entidad. “}

Mi código:

IGroup group = azureClient.Groups.GetByObjectId("Guid here").ExecuteAsync().Result; IGroup groupToAdd = azureClient.Groups.GetByObjectId("Guid here").ExecuteAsync().Result; azureClient.Context.AddLink(group, "Members", groupToAdd); azureClient.Context.SaveChanges(); 

No he podido encontrar ninguna mención de este error en relación con la biblioteca de clientes de Azure Active Directory Graph por realizar búsquedas en Google, por lo que cualquier ayuda sobre esto sería muy apreciada.

Acabamos de lanzar una actualización de la biblioteca del cliente de Graph, que soluciona este problema. Ahora debería poder agregar miembros a los grupos. El mecanismo es un poco diferente de usar AddLinks (y, con suerte, más sencillo).

También tenemos un nuevo blog que describe la biblioteca cliente que habla de esto y muchas otras cosas: http://blogs.msdn.com/b/aadgraphteam/archive/2014/12/12/announcing-azure-ad-graph-api -client-library-2-0.aspx

Para referencia, para agregar un miembro a un grupo:

{groupObject} .Members.Add ({entityObject} como DirectoryObject);

Por ejemplo, para actualizar un grupo con un nuevo usuario:

myGroup.Members.Add (userToBeAdded as DirectoryObject); aguarda myGroup.UpdateAsync ();

NOTA: la misma construcción se puede usar para agregar usuarios a un objeto de DirectoryRole. Los grupos y usuarios pueden agregarse a un grupo, sin embargo, por ahora, solo los usuarios pueden agregarse a un DirectoryRole.

Espero que esto ayude,

Tuve el mismo problema y la documentación no estaba muy clara, así que quizás esto ayude a otros. No puede agregar usuarios como miembros de un IGroup , sino solo a un Group . Tampoco puede agregar IDirectoryObject s a la colección Members , pero solo DirectoryObject s. Primero debes lanzar tus objetos IUser e IGroup . El siguiente código es el que tengo trabajando en este momento:

 var graphClient = new ActiveDirectoryClient(new Uri(ConfigHelper.GraphServiceRoot), async () => await GetUserTokenAsync(cache)); var actualUser = await graphClient.Users.GetByObjectId(matchedUser.ObjectId).ExecuteAsync(); var actualGroup = (Group) await graphClient.Groups.GetByObjectId(matchedGroup.ObjectId).ExecuteAsync(); actualGroup.Members.Add(actualUser as DirectoryObject); await graphClient.Context.SaveChangesAsync(); 

He intentado esta nueva syntax pero todavía no funciona.

  public async Task> addUserToAzureGroup(Group AzGroup, User AzUser) { // link the found user with the found group try { AzGroup.Members.Add(AzUser as DirectoryObject); await AzGroup.UpdateAsync(); } catch (Exception ex) { Exception myEx = new Exception(ex.Message); retResult.Exception = myEx; return retResult; } return retResult; } 

Tengo casi el mismo texto de error en el mensaje de execption: el contexto ya está rastreando la relación

¿Alguna noticia sobre ese tema? ¿Alguien podría adivinar por qué sucede eso?

¡También probé desde la IU manage.windowsAzure.com y aún no puedo agregar al usuario! Recibo este error: No se pudieron agregar miembros al grupo ‘myAzAD_group’ .