public ArchivedAlbumVersionDetailsContract(ArchivedAlbumVersion archived, ArchivedAlbumVersion comparedVersion, ContentLanguagePreference languagePreference) { Album = new AlbumContract(archived.Album, languagePreference); ArchivedVersion = new ArchivedAlbumVersionContract(archived); ComparedVersion = comparedVersion != null ? new ArchivedAlbumVersionContract(comparedVersion) : null; Name = Album.Name; ComparableVersions = archived.Album.ArchivedVersionsManager.Versions .Where(v => v != archived) .Select(a => new ArchivedObjectVersionContract(a)) .ToArray(); Versions = ComparedAlbumsContract.Create(archived, comparedVersion); ComparedVersionId = Versions.SecondId; }
public ArchivedAlbumVersionDetailsContract(ArchivedAlbumVersion archived, ArchivedAlbumVersion comparedVersion, ContentLanguagePreference languagePreference) { ParamIs.NotNull(() => archived); Album = new AlbumContract(archived.Album, languagePreference); ArchivedVersion = new ArchivedAlbumVersionContract(archived); ComparedVersion = comparedVersion != null ? new ArchivedAlbumVersionContract(comparedVersion) : null; Name = Album.Name; ComparableVersions = archived.Album.ArchivedVersionsManager .GetPreviousVersions(archived) .Select(a => ArchivedObjectVersionWithFieldsContract.Create(a, a.Diff.ChangedFields.Value, a.Reason)) .ToArray(); Versions = ComparedAlbumsContract.Create(archived, comparedVersion); ComparedVersionId = Versions.SecondId; }