Ejemplo n.º 1
0
        public async Task <List <ContactFolder> > GetAllChildContactFoldersAsync(string FolderId)
        {
            // Get all contact folders in the specified folder.

            Uri URL = Util.UseMicrosoftGraphInMailboxViewer ? new Uri($"https://graph.microsoft.com/v1.0/me/contactfolders/{FolderId}/childfolders/?$Top=1000&$select=Id,DisplayName") : new Uri($"https://outlook.office.com/api/v2.0/me/contactfolders/{FolderId}/childfolders/?$Top=1000&$select=Id,DisplayName");

            List <ContactFolder> result = new List <ContactFolder>();

            try
            {
                string stringResponse = await SendGetRequestAsync(URL);

                var jsonResponse = (JObject)JsonConvert.DeserializeObject(stringResponse);
                var folders      = (JArray)jsonResponse.GetValue("value");

                foreach (var item in folders)
                {
                    var serializedObject = new ContactFolder(JsonConvert.SerializeObject(item));
                    result.Add(serializedObject);
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }

            return(result);
        }
Ejemplo n.º 2
0
        public static ContactFolder CreateFromId(string ID)
        {
            ContactFolder newContactFolder = new ContactFolder()
            {
                Id = ID
            };

            return(newContactFolder);
        }
Ejemplo n.º 3
0
        public async Task <ContactFolder> GetContactFolderAsync(string FolderId)
        {
            // Get the specified ContactFolder

            try
            {
                Uri    URL     = Util.UseMicrosoftGraphInMailboxViewer ? new Uri($"https://graph.microsoft.com/v1.0/me/contactfolders/{FolderId}") : new Uri($"https://outlook.office.com/api/v2.0/me/contactfolders/{FolderId}");
                string rawJson = await SendGetRequestAsync(URL);

                var contactFolder = new ContactFolder(rawJson);

                return(contactFolder);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// Update the navigation property contactFolders in users
        /// <param name="body"></param>
        /// <param name="requestConfiguration">Configuration for the request such as headers, query parameters, and middleware options.</param>
        /// </summary>
        public RequestInformation CreatePatchRequestInformation(ContactFolder body, Action <ContactFolderItemRequestBuilderPatchRequestConfiguration> requestConfiguration = default)
        {
            _ = body ?? throw new ArgumentNullException(nameof(body));
            var requestInfo = new RequestInformation {
                HttpMethod     = Method.PATCH,
                UrlTemplate    = UrlTemplate,
                PathParameters = PathParameters,
            };

            requestInfo.SetContentFromParsable(RequestAdapter, "application/json", body);
            if (requestConfiguration != null)
            {
                var requestConfig = new ContactFolderItemRequestBuilderPatchRequestConfiguration();
                requestConfiguration.Invoke(requestConfig);
                requestInfo.AddRequestOptions(requestConfig.Options);
                requestInfo.AddHeaders(requestConfig.Headers);
            }
            return(requestInfo);
        }
        private async void GetContactFolderProps(string FolderId)
        {
            // Get the folder.
            IContactFolder contactFolderResult = new ContactFolder();

            try
            {
                contactFolderResult = await viewerHelper.GetContactFolderAsync(FolderId);
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Office365APIEditor");
                return;
            }


            // Add columns.
            dataGridView_FolderProps.Columns.Add("Property", "Property");
            dataGridView_FolderProps.Columns.Add("Value", "Value");
            dataGridView_FolderProps.Columns.Add("Type", "Type");

            // Add rows.

            DataGridViewRow propDisplayName = new DataGridViewRow();

            propDisplayName.CreateCells(dataGridView_FolderProps, new object[] { "DisplayName", contactFolderResult.DisplayName, contactFolderResult.DisplayName.GetType().ToString() });
            dataGridView_FolderProps.Rows.Add(propDisplayName);

            DataGridViewRow propId = new DataGridViewRow();

            propId.CreateCells(dataGridView_FolderProps, new object[] { "Id", contactFolderResult.Id, contactFolderResult.Id.GetType().ToString() });
            dataGridView_FolderProps.Rows.Add(propId);

            DataGridViewRow propParentFolderId = new DataGridViewRow();

            propParentFolderId.CreateCells(dataGridView_FolderProps, new object[] { "ParentFolderId", contactFolderResult.ParentFolderId, contactFolderResult.ParentFolderId.GetType().ToString() });
            dataGridView_FolderProps.Rows.Add(propParentFolderId);
        }