using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace eprintServer.Entities; [Table("blog_posts")] public class Blog { [Key] [Column("id")] public int Id { get; set; } [Column("author")] public string Author { get; set; } = string.Empty; [Column("published")] public bool Published { get; set; } = true; [Column("image_id")] public long? ImageId { get; set; } [ForeignKey(nameof(ImageId))] public FileModel? Image { get; set; } [Column("created_at")] public DateTime CreatedAt { get; set; } [Column("updated_at")] public DateTime UpdatedAt { get; set; } public List TitleDynamic { get; set; } = new List(); public List ContentDynamic { get; set; } = new List(); public Blog() { CreatedAt = DateTime.UtcNow; UpdatedAt = DateTime.UtcNow; Author = "Admin"; // Default author, can be updated later } public void SetImage(FileModel file) { Image = file; ImageId = file.Id; } }