using System.ComponentModel.DataAnnotations; namespace Treestar.Shared.Models.DBDomain { public class Chapter : BaseEntity { public int ChapterNumber { get; set; } public string Name { get; set; } public string? Content { get; set; } public string? RawContent { get; set; } [Key] public string Url { get; set; } public DateTime? DatePosted { get; set; } public DateTime? DateUpdated { get; set; } public DateTime? LastContentFetch { get; set; } [Required] public string NovelUrl { get; set; } protected bool Equals(Chapter other) { return Url == other.Url; } public override bool Equals(object? obj) { if (ReferenceEquals(null, obj)) return false; if (ReferenceEquals(this, obj)) return true; if (obj.GetType() != this.GetType()) return false; return Equals((Chapter) obj); } public override int GetHashCode() { return Url.GetHashCode(); } } }