PiwigoDirectorySync/PiwigoDirectorySync/Persistence/AlbumEntity.cs

22 lines
809 B
C#

using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
namespace PiwigoDirectorySync.Persistence;
public class AlbumEntity
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public int? ParentId { get; set; }
public AlbumEntity? Parent { get; set; }
public required int ServerId { get; set; }
public PiwigoServerEntity Server { get; set; } = null!;
public required string Name { get; set; }
public required string DirectoryName { get; set; }
public string FullDirectory => Parent is not null ? $"{Parent.FullDirectory}{Path.DirectorySeparatorChar}{DirectoryName}" : DirectoryName;
public int? PiwigoAlbumId { get; set; }
}