ServiceClientGenerator.ServiceModel.Enumerations C# (CSharp) Method

Enumerations() public method

Returns list of enums defined in the service model.
public Enumerations ( bool includeParentEnums ) : IEnumerable
includeParentEnums bool Includes enums from current service model, which are also /// defined in the parent model.
return IEnumerable
        public IEnumerable<Enumeration> Enumerations(bool includeParentEnums)
        {
            var list = new List<Enumeration>();
            foreach (KeyValuePair<string, JsonData> kvp in DocumentRoot[ShapesKey])
            {
                var type = kvp.Value["type"];
                if (type != null && type.ToString() == "string" && kvp.Value["enum"] != null)
                    list.Add(new Enumeration(this, kvp.Key, kvp.Value));
            }
            list = list.OrderBy(x => x.Name).ToList();

            if (includeParentEnums || this.ParentModel == null)
            {
                return list;
            }
            else
            {
                // Remove enums already defined in the parent model                
                return list.Where(e => ParentModel.Enumerations(true).All(en => !e.ModelName.Equals(en.ModelName)));
            }         
        }