/// <summary>
 /// Create C# String from TypeContainer
 /// This createsa type with all the required elements
 /// </summary>
 /// <param name="inType"></param>
 /// <returns></returns>
 private string CreateStringFromType(TypeContainer inType, bool inAddEndEntry = true)
 {
     if (inType == null)
     {
         return("");
     }
     if (inType.GenericTypes.Count > 0)
     {
         return($"{inType.Type?.Name ?? inType.Name}{(inType.IsNullable ? "?" : "")}<{string.Join(" ,", inType.GenericTypes.Select(inItem => CreateStringFromType(inItem, false)))}>{(inType.IsArray ? "[]" : "")}{(inAddEndEntry ? " " : "")}");
     }
     return($"{inType.Type?.Name ?? inType.Name}{(inType.IsNullable ? "?" : "")}{(inType.IsArray ? "[]" : "")}{(inAddEndEntry ? " " : "")}");
 }