public void addInterest(int newChildID, string newInterest) { if (newChildID < allChildren().Count) { Child child = getChildBasedOnId(newChildID); if (!(isAlreadyInterest(child, newInterest))) { foreach (Family family in families) { foreach (Child child1 in family.Children) { if (child1.Id == newChildID) { Interest interest = new Interest(); interest.Type = newInterest; ChildInterest childInterest = new ChildInterest(); childInterest.Child = child1; childInterest.Interest = interest; childInterest.ChildId = child1.Id; childInterest.InterestId = interest.Type; child1.ChildInterests.Add(childInterest); } } } } } fileContext.SaveChanges(); }
public static void Main(string[] args) { FileAdapter fileAdapter = new FileAdapter(); var allFamilies = fileAdapter.getAllFamilies(); //AddAllFamilies(allFamilies); using (FamilyDbContext familyDbContext = new FamilyDbContext()) { var first = familyDbContext.Childs.First(child => child.FirstName.Equals("Maria")); Interest interest = familyDbContext.Interests.First(interst => interst.Type.Equals("Fodbold")); ChildInterest childInterest = new ChildInterest() { Child = first, Interest = interest }; familyDbContext.ChildInterests.Add(childInterest); familyDbContext.SaveChanges(); } CreateHostBuilder(args).Build().Run(); }
public void AddChildInterest(Child child, String interestType) { ChildInterest childInterest = new ChildInterest(); childInterest.Child = child; childInterest.ChildId = child.Id; // childInterest.Interest = interest; childInterest.InterestId = interestType; ChildInterests.Add(childInterest); child.ChildInterests.Add(childInterest); WriteChildrenToFile(); WriteChildInterestToFile(); }
public Child AddChildFinal(Child child, List <Interest> interestList) { Child tempChild = AddChild(child); foreach (var interest in interestList) { Interest tempInterest = interest; var fetchedInterest = ctx.Interest.First(i => i.Type.Equals(interest.Type)); ChildInterest childInterest = new ChildInterest() { Child = tempChild, ChildId = tempChild.Id, Interest = fetchedInterest, InterestId = fetchedInterest.Type }; tempChild.ChildInterests = new List <ChildInterest>(); tempChild.ChildInterests.Add(childInterest); } ctx.Update(tempChild); ctx.SaveChangesAsync(); return(tempChild); }
public Child GenerateChild(Family family, int[] ageRange, string lastName) { Child c = new Child(); c.Id = (++ChildId); // c.Id = ChildId++; c.Age = rand.Next(ageRange[1] - ageRange[0]) + ageRange[0]; c.Sex = rand.Next(2) == 0 ? "F" : "M"; // setting height if (c.Age == 0) { c.Height = 50 + rand.Next(11) - 5; } else if (c.Age == 1) { c.Height = 70 + rand.Next(15) - 7; } else if (c.Age < 17) { int tmp = c.Age * 6 + 77; c.Height = tmp + rand.Next((int)(tmp * 0.4)) - (int)(tmp * 0.2); if (c.Sex.Equals("F")) { c.Height -= rand.Next(5); } } else if (c.Age >= 17) { string s = c.Sex; int result = GenerateAdultHeight(s); c.Height = result; } //float cWeight = c.Weight; int cHeight = c.Height; decimal cWeight = GenerateWeight(cHeight); if (c.Sex.Equals("F")) { cWeight -= cWeight * 0.15M; } c.Weight = cWeight; c.EyeColor = GenerateEyeColor(family.Adults).ToString(); c.HairColor = GenerateHairColor().ToString(); if (c.Sex.Equals("F")) { c.FirstName = FemaleName.list[rand.Next(FemaleName.list.Length)]; } else { c.FirstName = MaleName.list[rand.Next(MaleName.list.Length)]; } c.LastName = !"".Equals(lastName) && lastName != null ? lastName : LastName.list[rand.Next(LastName.list.Length)]; foreach (Adult parent in family.Adults) { if (c.LastName.Equals(parent.LastName)) { c.LastName += " Jr."; } } c.Pets = GenerateChildPets(); List <ChildInterest> childInterests = new List <ChildInterest>(); double chance = 1.0; while (chance >= rand.NextDouble()) { int index = rand.Next(InterestTypes.dic.Count); string interestType = InterestTypes.dic.Keys.ToArray()[index]; Interest interest = new Interest { Type = interestType, Description = InterestTypes.dic[interestType] }; ChildInterest ci = new ChildInterest { Child = c, Interest = interest, ChildId = c.Id, InterestId = interest.Type }; if (!childInterests.Contains(ci)) { childInterests.Add(ci); } chance *= 0.8; } c.ChildInterests = childInterests; return(c); }