using Domain.Entities.Forum.Boards; using Domain.Entities.Forum.Posts; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; namespace Domain.Entities.Forum.Comments { public class CommentFile { [ForeignKey(nameof(BoardID))] public virtual Board Board { get; set; } = null!; [ForeignKey(nameof(PostID))] public virtual Post Post { get; set; } = null!; [ForeignKey(nameof(CommentID))] public virtual Comment Comment { get; set; } = null!; [Key] public int ID { get; set; } public int BoardID { get; set; } public int PostID { get; set; } public int CommentID { get; set; } public Guid UUID { get; set; } public string FileName { get; set; } = default!; public string HashedName { get; set; } = default!; public string Path { get; set; } = default!; public string Url { get; set; } = default!; public string? Extension { get; set; } public string? ContentType { get; set; } public long? Size { get; set; } = 0; public int Downloads { get; set; } = 0; public bool IsDisabled { get; set; } = false; public DateTime? DisabledAt { get; set; } public DateTime CreatedAt { get; set; } = DateTime.UtcNow; } }