首页 > 解决方案 > Microsoft.Graph.ServiceException:'代码:BadRequest 消息:此通道不支持操作

问题描述

我使用这个文档 - https://docs.microsoft.com/ru-ru/graph/api/channel-post-members?view=graph-rest-1.0&tabs=csharp%2Chttp

我收到此消息,当我想在频道中添加成员时,请在此处输入图片

 var conversationMember = new AadUserConversationMember
            {
                Roles = new List<String>()
                {

                },
                AdditionalData = new Dictionary<string, object>()
                {
                    {userBind, $"https://graph.microsoft.com/v1.0/users('{userId}')"}
                }
            };

            await graphClient.Teams[$"{teamId}"].Channels[$"{channelId}"].Members
                .Request()
                .AddAsync(conversationMember);// Here I get error

我在这里创建了频道

            var team = new Team
            {
                DisplayName = department.Name,
                Channels = new TeamChannelsCollectionPage()
                {

                },
                Members = new TeamMembersCollectionPage()
                {
                    new AadUserConversationMember
                    {
                        Roles = new List<String>()
                        {
                            "owner"
                        },
                        AdditionalData = new Dictionary<string, object>()
                        {
                            { userBind, $"https://graph.microsoft.com/v1.0/users('{ownerId}')" }
                        },
                    }
                },

                AdditionalData = new Dictionary<string, object>()
                {
                    { templateBind, urlTeamsApiStandard },
                }
            };

            foreach (var bitrixChannel in department.Channels)
            {
                var channel = new Channel
                {
                    DisplayName = bitrixChannel.Name,
                    MembershipType = ChannelMemberShipType.Private // Here I choose private, which doesnt work
                };

                team.Channels.Add(channel);
            }

            await graphClient.Teams
                     .Request()
                     .AddAsync(team);  

怎么了?

UPD: 我发现我在 ms 团队中的频道以非私人模式创建,即使我选择了私人。但我不明白为什么

标签: c#asp.net-coremicrosoft-graph-api

解决方案


我发现我必须使用


await graphClient.Teams[teamId].Channels
                 .Request()
                     .AddAsync(channel);

推荐阅读