public override string ToString() { var targetAttribute = GetType().GetAttribute<TargetAttribute>(); if (targetAttribute != null) { return targetAttribute.Name + " Target[" + (this.Name ?? "(unnamed)") + "]"; } return this.GetType().Name; }