知道GetFoldersAsync(WP8.1 / C#)冻结的原因吗?

时间:2015-03-02 13:09:21

标签: c# windows-phone-8 asynchronous async-await

我对WP8.1和异步编程相对较新,我遇到了一段代码问题,我编写/适合创建一系列专辑,从WP8.1 MusicLibrary中检索到

代码是这样的:

    public static async Task<ObservableCollection<Album>> GetAlbums()
    {
        ObservableCollection<Album> returnValue = new ObservableCollection<Album>();
        IReadOnlyList<StorageFolder> loadedMusic = await KnownFolders.MusicLibrary.GetFoldersAsync(CommonFolderQuery.GroupByAlbumArtist);

        foreach (var file in loadedMusic)
        {
            Album tempAlbum = new Album();
            MusicProperties musicProperties = await file.Properties.GetMusicPropertiesAsync();
            tempAlbum.Artist = musicProperties.AlbumArtist;
            tempAlbum.Title = musicProperties.Title;
            tempAlbum.ItemImage = "";
            returnValue.Add(tempAlbum);
        }

        return returnValue;
    }

问题在于,当代码到达GetFoldersAsync行(在我的手机上运行 - 8.1牛仔版构建,目前包含大约30个音乐专辑)时,它似乎挂起,而不是返回任何内容。

任何人都有任何想法,为什么会这样?

0 个答案:

没有答案