示例#1
0
        public async static Task <List <Mitarbeiter> > LoadAllMitarbeiterAsync(ISqlHandler Sql, string Fields)
        {
            SqlDataSet Data = await Sql.SelectAsync(Mitarbeiter.Table, Fields);

            List <Mitarbeiter> loadedMitarbeiterList = new List <Mitarbeiter>();

            for (int i = 0; i < Data.DataRowCount; i++)
            {
                Mitarbeiter mitarbeiter = new Mitarbeiter();
                for (int j = 0; j < Data.FieldCount; j++)
                {
                    string f = Data.FieldNames[j];
                    object d = Data.GetRowData(i)[Data.FieldNames.IndexOf(f)];
                    if (f == Mitarbeiter.FieldId)
                    {
                        mitarbeiter.Id = (int)d;
                    }
                    else if (f == Mitarbeiter.FieldKennung)
                    {
                        mitarbeiter.Kennung = (string)d;
                    }
                    else if (f == Mitarbeiter.FieldName)
                    {
                        mitarbeiter.Name = (string)d;
                    }
                    else if (f == Mitarbeiter.FieldVorname)
                    {
                        mitarbeiter.Vorname = (string)d;
                    }
                    else if (f == Mitarbeiter.FieldFähigkeiten)
                    {
                        mitarbeiter.Fähigkeiten = (string)d;
                    }
                    else if (f == Mitarbeiter.FieldSchicht)
                    {
                        mitarbeiter.Schicht = await LoadSchichtAsync(Sql, (int)d);
                    }
                    else if (f == Mitarbeiter.FieldTelefon)
                    {
                        mitarbeiter.AddRufnummer(new Rufnummer((string)d, RufnummerTyp.FestnetzPrivat));
                    }
                    else if (f == Mitarbeiter.FieldMobil)
                    {
                        mitarbeiter.AddRufnummer(new Rufnummer((string)d, RufnummerTyp.MobilDienst));
                    }
                    else if (f == Mitarbeiter.FieldTelefonIntern)
                    {
                        mitarbeiter.AddRufnummer(new Rufnummer((string)d, RufnummerTyp.FestnetzIntern));
                    }
                    else if (f == Mitarbeiter.FieldFaxIntern)
                    {
                        mitarbeiter.AddRufnummer(new Rufnummer((string)d, RufnummerTyp.FaxIntern));
                    }
                    else if (f == Mitarbeiter.FieldEMail)
                    {
                        mitarbeiter.AddEmail((string)d);
                    }
                }
                loadedMitarbeiterList.Add(mitarbeiter);
            }
            return(loadedMitarbeiterList);
        }
        public async static Task <List <Mitarbeiter> > LoadAllAsync(string[] Fields, ISqlHandler Sql)
        {
            SqlDataSet data = await Sql.SelectAsync(Table, SqlUtility.AppendWithCommas(Fields));

            List <Mitarbeiter> mitarbeiter = new List <Mitarbeiter>();

            foreach (List <object> singleData in data.Data)
            {
                Mitarbeiter mit = new Mitarbeiter();
                for (int i = 0; i < data.FieldCount; i++)
                {
                    string f = data.FieldNames[i];
                    object o = singleData[i];
                    if (o is DBNull)
                    {
                        o = default(object);
                    }
                    if (f == FieldId)
                    {
                        mit.Id = (int)o;
                    }
                    else if (f == FieldKennung)
                    {
                        mit.Kennung = (string)o;
                    }
                    else if (f == FieldName)
                    {
                        mit.Name = (string)o;
                    }
                    else if (f == FieldVorname)
                    {
                        mit.Vorname = (string)o;
                    }
                    else if (f == FieldFähigkeiten)
                    {
                        mit.Fähigkeiten = (string)o;
                    }
                    else if (f == FieldSchicht)
                    {
                        mit.Schicht.Id = (int)o;
                    }
                    else if (f == FieldTelefon)
                    {
                        mit.Kontakt.Rufnummern.Add(new Rufnummer((string)o, RufnummerTyp.FestnetzPrivat));
                    }
                    else if (f == FieldMobil)
                    {
                        mit.Kontakt.Rufnummern.Add(new Rufnummer((string)o, RufnummerTyp.MobilDienst));
                    }
                    else if (f == FieldTelefonIntern)
                    {
                        mit.Kontakt.Rufnummern.Add(new Rufnummer((string)o, RufnummerTyp.FestnetzIntern));
                    }
                    else if (f == FieldFaxIntern)
                    {
                        mit.Kontakt.Rufnummern.Add(new Rufnummer((string)o, RufnummerTyp.FaxIntern));
                    }
                    else if (f == FieldEMail)
                    {
                        mit.Kontakt.EMail = (string)o;
                    }
                }
                mitarbeiter.Add(mit);
            }
            return(mitarbeiter);
        }