Exemple #1
0
        /// <summary>
        /// An awaitable version of OrgUnit.GetOrgUnitFromSelector.
        /// Make sure to handle output with OrgUnit.HandleAwaitableGetOrgUnitFromSelector.
        /// </summary>
        /// <returns></returns>
        public static List <OrgUnit> AwaitableGetOrgUnitFromSelector()
        {
            StreamReader orgUnitStream = GAM.RunGAMStream("print orgs allfields");

            using (var csv = new CsvReader(orgUnitStream))
            {
                var orgUnits = new List <OrgUnit>();
                csv.Configuration.HeaderValidated   = null;
                csv.Configuration.MissingFieldFound = null;
                csv.Read();
                csv.ReadHeader();
                while (csv.Read())
                {
                    orgUnits.Add(new OrgUnit
                    {
                        OrgUnitPath        = csv.GetField("orgUnitPath"),
                        OrgUnitName        = csv.GetField("name"),
                        OrgUnitDescription = csv.GetField("description")
                    });
                }

                return(orgUnits);
            }
            //List<OrgUnit> orgUnits = new List<OrgUnit>();
            //foreach (List<string> org in fixedOrgs)
            //{
            //    if (org[0] == "orgUnitPath") continue;

            //    orgUnits.Add(new OrgUnit()
            //    {
            //        OrgUnitPath = !String.IsNullOrEmpty(org[0]) ? org[0] : null,
            //        OrgUnitName = !String.IsNullOrEmpty(org[2]) ? (org[2].StartsWith("id:") ? "(no description provided)" : org[2]) : null,
            //        OrgUnitDescription = !String.IsNullOrEmpty(org[3]) ? (org[3].StartsWith("id:") ? "(no description provided)" : org[3]) : null
            //    });
            //}
            //if (orgUnits.Count < 2)
            //{
            //    return new List<OrgUnit>();
            //} else
            //{
            //    return orgUnits;
            //}
        }