Beispiel #1
0
        public async Task <Group> CreateNewTeamAndGroup(string accessToken, String displayName, String mailNickname, String description)
        {
            // create group
            Group groupParams = new Group()
            {
                displayName  = displayName,
                mailNickname = mailNickname,
                description  = description,

                groupTypes      = new string[] { "Unified" },
                mailEnabled     = true,
                securityEnabled = false,
                visibility      = "Private",
            };

            Group createdGroup = (await HttpPost($"/groups", groupParams))
                                 .Deserialize <Group>();
            string groupId = createdGroup.id;

            // add me as member
            string me = await GetMyId(accessToken);

            string payload = $"{{ '@odata.id': '{GraphRootUri}/users/{me}' }}";
            HttpResponseMessage responseRef = await ServiceHelper.SendRequest(HttpMethod.Post,
                                                                              $"{GraphRootUri}/groups/{groupId}/members/$ref",
                                                                              accessToken, payload);

            // create team
            await AddTeamToGroup(groupId, accessToken);

            return(createdGroup);
        }
Beispiel #2
0
 public async Task <ActionResult> PostGroupAction(FormOutput data)
 {
     return(await WithExceptionHandlingAsync(
                async token =>
     {
         Group group = await graphService.CreateNewTeamAndGroup(token, data.DisplayNameInput, data.MailNicknameInput, data.DescriptionInput);
         var teams = (await graphService.GetMyTeams(token)).ToArray();
         return new FormOutput()
         {
             Teams = teams,
             ShowTeamOutput = true
         };
     }
                ));
 }