示例#1
0
        public async Task <IList <UploadedFile> > GetFiles()
        {
            var fileIds = from fileInfo in this._fileStore.GetFiles()
                          let plainName = Path.GetFileNameWithoutExtension(fileInfo.Name)
                                          where plainName != null && FileIdentifier.IsValid(plainName)
                                          select FileIdentifier.FromString(plainName);

            List <UploadedFile> uploadedFiles = new List <UploadedFile>();

            foreach (FileIdentifier id in fileIds.Distinct())
            {
                UploadedFile file = await this.GetFileInternal(id).ConfigureAwait(false);

                if (file != null)
                {
                    uploadedFiles.Add(file);
                }
            }

            return(uploadedFiles);
        }