using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using Microsoft.EntityFrameworkCore;
using Pf2eModel.Model.Base.Legacy;
namespace Pf2eModel.Model.Base.Targets;
///
/// Цель внешней ссылки.
///
public class ExternalTarget
{
///
/// Идентификатор цели.
///
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Column(Order = 1)]
[Comment("Идентификатор")]
public int Id { get; set; }
///
/// Название цели.
///
[Column(Order = 2)]
[StringLength(Pf2eDbContext.NameLength)]
[Comment("Отображаемое имя")]
public string Name { get; set; } = null!;
///
/// Иконка цели.
///
[Column(Order = 3)]
[StringLength(255)]
[Comment("Иконка цели")]
public string Icon { get; set; } = null!;
///
/// Префикс для URL-адреса внешней ссылки.
///
[Column(Order = 3)]
[StringLength(Pf2eDbContext.NameLength)]
[Comment("Префикс для URL-адреса внешней ссылки")]
public string Prefix { get; set; } = null!;
///
/// Коллекция сущностей, которые ссылаются на эту цель.
///
public ICollection EntityExternals { get; set; } = [];
///
/// Коллекция устаревших сущностей, которые ссылаются на эту цель.
///
public ICollection LegacyEntityExternals { get; set; } = [];
}