コード例 #1
0
 public void ShowData(Dienststelle dst)
 {
     Console.WriteLine(" Dienstelle : ");
     Console.WriteLine($"Id: {Id}");
     Console.WriteLine($"Name: {Name}");
     Console.WriteLine($"Email: {Url}");
     Console.WriteLine($"Bemerkung: {Bemerkung}");
     Console.WriteLine($"Aktiv: {IstAktiv}");
     Console.WriteLine($"        Adresse/ Latitude: {Adresse.Latitude}");
     Console.WriteLine($"        Adresse/ Longitude: {Adresse.Longitude}");
     Console.WriteLine($"        Adresse/ Stadt: {Adresse.Stadt}");
     Console.WriteLine($"        Adresse/ Bemerkung: {Adresse.Bemerkung}");
     Console.WriteLine($" **** Liste Mitarbeiter ***");
     foreach (var ma in Mitarbeiter)
     {
         ma.ToString(ma);
     }
     Console.WriteLine("******************************************************************");
 }
コード例 #2
0
ファイル: Program.cs プロジェクト: ThoLorenz/BogusTestdaten
        private static void Main(string[] args)
        {
            var testDienststellen = new Faker <Dienststelle>()
                                    .StrictMode(false)
                                    .RuleFor(x => x.Id, r => r.Random.Int(1, Int32.MaxValue))
                                    .RuleFor(x => x.IstAktiv, r => r.Random.Bool())
                                    // Lorem-Text mit Anzahl der Wörter
                                    .RuleFor(x => x.Bemerkung, f => f.Lorem.Sentence(12))
                                    .RuleFor(x => x.Name,
                                             r => r.PickRandom(dienststellenList) + " " + r.PickRandom(DienststelleZusatzList))
                                    .RuleFor(x => x.Url, (f, u) => f.Internet.Email(u.Name, string.Empty
                                                                                    ));
            Dienststelle dst = testDienststellen.Generate();

            // Eine Adresse
            var address = new Faker <Adresse>()
                          .RuleFor(x => x.Id, r => r.Random.Int())
                          .RuleFor(x => x.Latitude, r => r.Address.Latitude())
                          .RuleFor(x => x.Longitude, r => r.Address.Longitude())
                          // NaughtyStrings Extension
                          .RuleFor(x => x.Bemerkung, r => r.Naughty().SQLInjection())
                          .RuleFor(x => x.Stadt, r => r.Address.City());
            Adresse adresse = address.Generate();

            dst.Adresse = adresse;

            // Liste von 20 Mitarbeitern
            var    idMitarbeiter        = 1;
            Random random               = new Random();
            int    randomNumber         = random.Next(6, 12);
            var    testMitarbeiterListe = new Faker <Mitarbeiter>()
                                          // StrictMode : true > alle Properties müssen gefüllt werden
                                          .StrictMode(false)
                                          // Erstellt bei jedem Durchlauf die selben Daten
                                          //.UseSeed(999)
                                          .RuleFor(x => x.Dienststelle, r => dst)
                                          // Id soll fortlaufend bei 1 starten (zusätzliche Variable erstellen)
                                          .RuleFor(x => x.Id, r => idMitarbeiter++)
                                          .RuleFor(x => x.Gehalt, r => r.Finance.Amount(1000, 4000))
                                          .RuleFor(x => x.IBAN, r => r.Finance.Iban(true))
                                          .RuleFor(x => x.Nachname, r => r.Name.LastName())
                                          .RuleFor(x => x.Vorname, r => r.Name.FirstName())
                                          // Waffle Extension > HTML
                                          .RuleFor(x => x.Zusatz, f => f.WaffleHtml(1, true))
                                          .RuleFor(x => x.Mail, (r, u) => r.Internet.Email(u.Vorname, u.Nachname))
                                          // Nullable : 50% sollen Null sein (Wahrscheinlichkeit)
                                          .RuleFor(x => x.IstFleißig, r => r.Random.Bool(0.5f))
                                          .RuleFor(x => x.Personalnummer, r => r.Random.Int(24000000, 24999999))
                                          .RuleFor(x => x.Telefon, r => r.Phone.PhoneNumber(format: "+49 ## ##########"))
                                          .RuleFor(x => x.Dienstgrad, r => r.PickRandom(dienstgradeList))
                                          .RuleFor(x => x.EingestelltAm, r => r.Date.Between(DateTime.Now, DateTime.Now.AddYears(-5)))
                                          // (r,u) => Dieses Datum wird aufgrund des Einstellungsdatum berechnet.
                                          // Muss dann aber danach berechnet werden
                                          // Kann aber auch Null sein !!!!
                                          .RuleFor(x => x.EntlassenAm, (r, u) => r.Date.Between(u.EingestelltAm, DateTime.Now).OrNull(r, .6f));

            // Beim Generieren einer zufälligen Anzahl kann ein eigener Random-Typ verwendet werden.
            List <Mitarbeiter> ma = testMitarbeiterListe.Generate(1);

            dst.Mitarbeiter = ma;
            dst.ShowData(dst);
            Console.ReadLine();
        }