using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
using Pf2eModel.Model.Enum;
namespace Pf2eModel.Model.Base.Source;
///
/// Источник сущности.
///
public class Source
{
///
/// Идентификатор источника.
///
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column(Order = 1)]
[Comment("Идентификатор")]
public int Id { get; set; }
///
/// Отображаемое имя источника.
///
[Column(Order = 2)]
[MaxLength(Pf2eDbContext.NameLength)]
[Comment("Отображаемое имя")]
public string Name { get; set; } = null!;
///
/// Категория источника.
///
[Column(Order = 3)]
[Comment("Категория источника")]
public SourceCategory Category { get; set; }
///
/// Дата выхода источника.
///
[Column(Order = 4)]
[Comment("Дата выхода источника")]
public DateOnly? ReleaseDate { get; set; }
///
/// Связанные сущности.
///
public ICollection EntitySources { get; set; } = [];
}