using InABox.Core; namespace Comal.Classes { public abstract class GanttRelationship : Entity, IRemotable, IPersistent where TEntityLink : IEntityLink, new() where TStageLink : IEntityLink, new() { [EntityRelationship(DeleteAction.Cascade)] public TEntityLink Parent { get; set; } [EntityRelationship(DeleteAction.Cascade)] public TStageLink Predecessor { get; set; } [EntityRelationship(DeleteAction.Cascade)] public TStageLink Successor { get; set; } public GanttRelationshipType Type { get; set; } public int Offset { get; set; } protected override void Init() { base.Init(); Parent = new TEntityLink(); Predecessor = new TStageLink(); Successor = new TStageLink(); } } }