Chimney.Shared.UserControls.ChimneyServerUserControl.GetStorageFileFromPathList C# (CSharp) Method

GetStorageFileFromPathList() private method

private GetStorageFileFromPathList ( StorageFolder sf, List filepath ) : Task
sf Windows.Storage.StorageFolder
filepath List
return Task
        async Task<StorageFile> GetStorageFileFromPathList(StorageFolder sf, List<string> filepath)
        {
            if (sf == null || filepath == null) return null;

            bool getFileCrawler = true;

            while (getFileCrawler || filepath.Count > 1)
            {
                sf = await sf.GetFolderAsync(filepath.FirstOrDefault<string>());

                if (sf != null)
                {
                    filepath.RemoveAt(0);
                }
                else
                {
                    getFileCrawler = false;
                }
            }

            if (sf != null && filepath.Count == 1)
            {
                return await sf.GetFileAsync(filepath.FirstOrDefault<string>());
            }

            return null;
        }
ChimneyServerUserControl