public MediaLink(DocumentInfo documentInfo) { var document = documentInfo.Document; Document = document; ContentDistribution = documentInfo.ContentDistribution; ID = document.Id; ID15 = document.Id15; Name = document.Title; Type = MediaTypeResolver.ResolveType(document.FileType, document.PathOnClient); Source = Type == MediaType.Url ? document.ContentUrl : $"ms-appdata:///local/VersionData/{document.Id}/{documentInfo.Sync.SyncId}/{document.PathOnClient}"; Thumbnail = $"ms-appdata:///local/VersionData/{document.Id}/{documentInfo.Sync.SyncId}/thumbnail.png"; if (!string.IsNullOrEmpty(document.ContentThumbnailId)) { ContentThumbnail = $"ms-appdata:///local/ContentThumbnails/{document.ContentThumbnailId}/{document.ContentThumbnailName}"; } IsInternal = document.IsInternal ?? false; Description = document.Description; Order = 0; JunctionID = null; ContentOwner = document.ContentOwner; ContentLastUpdatedDate = document.ContentLastUpdatedDate; ContentLastReviewedDate = document.ContentLastReviewedDate; }
public static async Task SaveThumbnail(StorageFile file, StorageFolder folder, ContentDocument document) { var type = MediaTypeResolver.ResolveType(document.FileType, document.PathOnClient); switch (type) { case MediaType.Image: case MediaType.MP4: case MediaType.Video: await SaveThumbnail(file, folder, ThumbnailMode.PicturesView); break; case MediaType.PDF: await SavePDFThumbnail(file, folder); break; default: return; } }