Files
Pf2eDataScrapper/Pf2eModel/Model/Structure/ClassRelation/ClassProgression.cs
T

63 lines
2.2 KiB
C#

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;
/// <summary>
/// Элемент прогрессии класса.
/// </summary>
public class ClassProgression
{
/// <summary>
/// Идентификатор прогрессии класса.
/// </summary>
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column(Order = 1)]
[Comment("Идентификатор")]
public int Id { get; set; }
/// <summary>
/// Идентификатор класса, к которому относится элемент прогрессии.
/// </summary>
[Column(Order = 2)]
[Comment("Идентификатор класса")]
public int ClassId { get; set; }
/// <summary>
/// Уровень класса, на котором элемент прогрессии доступен.
/// </summary>
[Column(Order = 3)]
[Comment("Уровень класса")]
public int Level { get; set; }
/// <summary>
/// Тип элемента прогрессии класса.
/// </summary>
[Column(Order = 4)]
[Comment("Тип элемента прогрессии класса")]
public ClassProgressionType Type { get; set; }
/// <summary>
/// Идентификатор сущности, связанной с элементом прогрессии класса (например, навык, атрибут и т.д.).
/// </summary>
[Column(Order = 5)]
[Comment("Идентификатор сущности")]
public int? EntityId { get; set; }
/// <summary>
/// Класс, к которому относится элемент прогрессии.
/// </summary>
[JsonIgnore]
public Class Class { get; set; } = null!;
/// <summary>
/// Сущность, связанная с элементом прогрессии класса (например, навык, атрибут и т.д.).
/// </summary>
public Entity? Entity { get; set; }
}