static void Main() { var context = new PhoneBookContext(); var migrationStrategy = new MigrateDatabaseToLatestVersion<PhoneBookContext, Configuration>(); Database.SetInitializer(migrationStrategy); var contacts = context.Contacts .Select(c => new { c.Name, Phones = c.Phones.Select(p => p.PhoneNumber), Emails = c.Emails.Select(e => e.EmailAddress) }).ToList(); foreach (var contact in contacts) { Console.WriteLine(contact.Name); //foreach (var phone in contact.Phones) //{ // Console.WriteLine(phone); //} //foreach (var e in contact.Emails) //{ // Console.WriteLine(e); //} Console.WriteLine("Phones: {0}", string.Join(", ", contact.Phones)); Console.WriteLine("Emails: {0}", string.Join(", ", contact.Emails)); Console.WriteLine(); } }
static void Main() { var context = new PhoneBookContext(); var migrationStrategy = new MigrateDatabaseToLatestVersion <PhoneBookContext, Configuration>(); Database.SetInitializer(migrationStrategy); var contacts = context.Contacts .Select(c => new { c.Name, Phones = c.Phones.Select(p => p.PhoneNumber), Emails = c.Emails.Select(e => e.EmailAddress) }).ToList(); foreach (var contact in contacts) { Console.WriteLine(contact.Name); //foreach (var phone in contact.Phones) //{ // Console.WriteLine(phone); //} //foreach (var e in contact.Emails) //{ // Console.WriteLine(e); //} Console.WriteLine("Phones: {0}", string.Join(", ", contact.Phones)); Console.WriteLine("Emails: {0}", string.Join(", ", contact.Emails)); Console.WriteLine(); } }
static void Main() { var context = new PhoneBookContext(); var json = File.ReadAllText("../../contacts.json"); JArray contacts = JArray.Parse(json); foreach (JToken contact in contacts) { Contact dbContact = new Contact(); if (contact["name"] == null) { Console.WriteLine("Error: Name is required"); continue; } dbContact.Name = contact["name"].ToString(); if (contact["phones"] != null) { foreach (var phone in contact["phones"]) { dbContact.Phones.Add(new Phone { PhoneNumber = phone.ToString() }); } } if (contact["emails"] != null) { foreach (var email in contact["emails"]) { dbContact.Emails.Add(new Email { EmailAddress = email.ToString() }); } } if (contact["company"] != null) { dbContact.Company = contact["company"].ToString(); } if (contact["notes"] != null) { dbContact.Notes = contact["notes"].ToString(); } if (contact["position"] != null) { dbContact.Position = contact["position"].ToString(); } if (contact["site"] != null) { dbContact.SiteURL = contact["site"].ToString(); } context.Contacts.Add(dbContact); context.SaveChanges(); Console.WriteLine("Contact {0} imported", dbContact.Name); } }