LANCommander/LANCommander.Server/Data/Models/Script.cs
2024-08-12 00:15:16 -05:00

36 lines
1.1 KiB
C#

using LANCommander.SDK.Enums;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text.Json.Serialization;
namespace LANCommander.Server.Data.Models
{
[Table("Scripts")]
public class Script : BaseModel
{
[Required]
public string Name { get; set; }
public string? Description { get; set; }
public ScriptType Type { get; set; }
public string Contents { get; set; }
public bool RequiresAdmin { get; set; }
public Guid? GameId { get; set; }
[JsonIgnore]
[ForeignKey(nameof(GameId))]
[InverseProperty("Scripts")]
public virtual Game? Game { get; set; }
public Guid? RedistributableId { get; set; }
[JsonIgnore]
[ForeignKey(nameof(RedistributableId))]
[InverseProperty("Scripts")]
public virtual Redistributable? Redistributable { get; set; }
public Guid? ServerId { get; set; }
[JsonIgnore]
[ForeignKey(nameof(ServerId))]
[InverseProperty("Scripts")]
public virtual Server? Server { get; set; }
}
}