/// <summary> /// Maps an EF ImageAsset record from the db into a ImageAssetDetails /// object. If the db record is null then null is returned. /// </summary> /// <param name="dbImage">ImageAsset record from the database.</param> public ImageAssetRenderDetails Map(ImageAsset dbImage) { if (dbImage == null) { return(null); } var image = new ImageAssetRenderDetails() { ImageAssetId = dbImage.ImageAssetId, FileExtension = dbImage.FileExtension, FileName = dbImage.FileName, FileNameOnDisk = dbImage.FileNameOnDisk, Height = dbImage.HeightInPixels, Width = dbImage.WidthInPixels, Title = dbImage.Title, DefaultAnchorLocation = dbImage.DefaultAnchorLocation, FileUpdateDate = dbImage.FileUpdateDate, VerificationToken = dbImage.VerificationToken }; image.FileStamp = AssetFileStampHelper.ToFileStamp(dbImage.FileUpdateDate); image.Url = _imageAssetRouteLibrary.ImageAsset(image); return(image); }
/// <summary> /// Maps a ImageAssetRenderDetails (which is potentially cached) into an /// ImageAssetFile object. If the dbImage is null then null is returned. /// </summary> /// <param name="dbImage">ImageAssetRenderDetails record to map.</param> /// <param name="contentStream">Steam containing the file data.</param> public ImageAssetFile Map(ImageAssetRenderDetails renderDetails, Stream contentStream) { if (renderDetails == null) { return(null); } if (contentStream == null) { throw new ArgumentNullException(nameof(contentStream)); } var image = new ImageAssetFile() { ImageAssetId = renderDetails.ImageAssetId, FileExtension = renderDetails.FileExtension, FileName = renderDetails.FileName, FileNameOnDisk = renderDetails.FileNameOnDisk, Height = renderDetails.Height, Width = renderDetails.Width, Title = renderDetails.Title, DefaultAnchorLocation = renderDetails.DefaultAnchorLocation, FileStamp = renderDetails.FileStamp, FileUpdateDate = renderDetails.FileUpdateDate, ContentStream = contentStream, VerificationToken = renderDetails.VerificationToken }; return(image); }