C# 在youtube api.net中按ID获取youtube播放列表

C# 在youtube api.net中按ID获取youtube播放列表,c#,.net,api,youtube,youtube-api,C#,.net,Api,Youtube,Youtube Api,我正试图从C#NET程序中的YouTube播放列表下载最新的项目。现在我有一个程序,它使用“channel.ContentDetails.RelatedPlaylists.Uploads;”成功地从我频道的上传播放列表中获取了必要的数据,这是我从API页面上的示例程序获得的。但我在api文档中找不到任何关于如何切换该行或其周围的行以获得ID播放列表而不是我自己上传的信息 这不是重复的,因为本页上的其他示例解释了如何通过http链接找到它,如“http://gdata.youtube.com/fe

我正试图从C#NET程序中的YouTube播放列表下载最新的项目。现在我有一个程序,它使用“channel.ContentDetails.RelatedPlaylists.Uploads;”成功地从我频道的上传播放列表中获取了必要的数据,这是我从API页面上的示例程序获得的。但我在api文档中找不到任何关于如何切换该行或其周围的行以获得ID播放列表而不是我自己上传的信息

这不是重复的,因为本页上的其他示例解释了如何通过http链接找到它,如“http://gdata.youtube.com/feeds/api/playlists/...“等等,我想直接通过API的方法来实现。下面是我下载数据的代码部分

private async Task Run()
{
    var youtubeService = new YouTubeService(new BaseClientService.Initializer()
    {
        ApiKey = "API KEY HERE",
        ApplicationName = this.GetType().ToString()
    });

    //MAYBE I NEED TO CHANGE THIS? SOMETHING LIKE
    //'youtubeservice.Playlists.IDUNNOWHAT'
    var channelsListRequest = youtubeService.Channels.List("contentDetails");
    channelsListRequest.Id = "CHANNEL ID HERE";

    // Retrieve the contentDetails part of the channel resource for the authenticated user's channel.
    var channelsListResponse = await channelsListRequest.ExecuteAsync();
    foreach (var channel in channelsListResponse.Items)
    {


        //OR MAYBE I NEED TO CHANGE THIS PART? 
        //LIKE 'channel.ContentDetails.SOMETHING
        var uploadsListId = channel.ContentDetails.RelatedPlaylists.Uploads;


        var nextPageToken = "";
        while (nextPageToken != null)
        {
            var playlistItemsListRequest = youtubeService.PlaylistItems.List("snippet");
            playlistItemsListRequest.PlaylistId = uploadsListId;
            playlistItemsListRequest.MaxResults = 50;
            playlistItemsListRequest.PageToken = nextPageToken;

            // Retrieve the list of videos uploaded to the authenticated user's channel.
            var playlistItemsListResponse = await playlistItemsListRequest.ExecuteAsync();
            /*
            * DO A BUNCH OF STUFF WITH THE YOUTUBE DATA
            */
            nextPageToken = playlistItemsListResponse.NextPageToken;
        }
    }
}
在中,它列出了可以使用
ContentDetails获得的播放列表。RelatedPlaylists

  • 喜欢
  • 最爱
  • 上传
  • 手表历史
  • 晚点
因此,如果您想获取您创建的播放列表的项目,您将无法使用
ContentDetails.RelatedPlaylists
,您必须提供播放列表ID。如果您更改,我相信它应该与您提供的代码配合使用(可能需要一些调整)

playlistItemsListRequest.PlaylistId = uploadsListId;

使用要获取其视频的播放列表的ID。

您还想获取哪些播放列表?我创建的播放列表。我需要通过它的ID来获取它。换句话说,我输入播放列表的ID,然后从中获取视频列表。