using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using Microsoft.EntityFrameworkCore; using Newtonsoft.Json; using Pf2eModel.Model.Base; using Pf2eModel.Model.Enum; namespace Pf2eModel.Model.Structure.ClassRelation; /// /// Элемент прогрессии класса. /// public class ClassProgression { /// /// Идентификатор прогрессии класса. /// [Key] [DatabaseGenerated(DatabaseGeneratedOption.Identity)] [Column(Order = 1)] [Comment("Идентификатор")] public int Id { get; set; } /// /// Идентификатор класса, к которому относится элемент прогрессии. /// [Column(Order = 2)] [Comment("Идентификатор класса")] public int ClassId { get; set; } /// /// Уровень класса, на котором элемент прогрессии доступен. /// [Column(Order = 3)] [Comment("Уровень класса")] public int Level { get; set; } /// /// Тип элемента прогрессии класса. /// [Column(Order = 4)] [Comment("Тип элемента прогрессии класса")] public ClassProgressionType Type { get; set; } /// /// Идентификатор сущности, связанной с элементом прогрессии класса (например, навык, атрибут и т.д.). /// [Column(Order = 5)] [Comment("Идентификатор сущности")] public int? EntityId { get; set; } /// /// Класс, к которому относится элемент прогрессии. /// [JsonIgnore] public Class Class { get; set; } = null!; /// /// Сущность, связанная с элементом прогрессии класса (например, навык, атрибут и т.д.). /// public Entity? Entity { get; set; } }