protected AbstractEntity(int id, string name, string desc, PropertyList properties,
     EntityStatus status) : base(name, desc)
 {
     if (properties == null)
         ArgumentNull.Throw("properties");
     ID = id;
     Properties = properties;
     this.status = status ?? EntityStatus.NormalStatus;
 }
 public override void Deactivate(EntityStatus nextStatus, IEntity entity) { }
 public abstract void Deactivate(EntityStatus nextStatus, IEntity entity);
 public override void Activate(EntityStatus lastStatus, IEntity entity) { }
 public abstract void Activate(EntityStatus lastStatus, IEntity entity);