summaryrefslogtreecommitdiff
path: root/DbTag.cs
blob: 4647f8ee3156af44e375c8d56b5b96cc5fe4c995 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;

namespace HyperBooru;

public class DbTagDefinition : DbObject {
    public         TagSource             Source          { get; set; } = TagSource.Internal;
    public         string?               Namespace       { get; set; }
    public         string                Name            { get; set; }
    public virtual List<DbTagDefinition> ImplicitTags    { get; set; } = new();

    public DbTagDefinition() =>
        base.ObjectType = ObjectType.TagDefinition;
}

public class DbTag : DbObject {
    public virtual DbTagDefinition TagDefinition { get; set; }
    public         DateTime        CreateTime    { get; set; } = DateTime.Now;
    public virtual DbObject        Target        { get; set; }

    public DbTag() =>
        base.ObjectType = ObjectType.Tag;
}