/// <summary>
 /// Gets all the children of this controller and any it inherits.
 /// </summary>
 /// <returns></returns>
 public IEnumerable <INavNode> GetChildren()
 {
     return(ResponseTypes.Cast <INavNode>()
            .Union(BaseController?.GetChildren() ?? new List <INavNode>())
            .Union(ConstantHeader)
            .Union(ParameterHeader)
            .Union(GetInjectionDependencies().OfType <INavNode>())
            .Where(x => x != null)
            .ToList());
 }