static void Main()
        {
            using (StreamReader r = new StreamReader("../../contacts.json"))
            {
                var context = new PhonebookContext();

                string json = r.ReadToEnd();
                JArray googleSearch = JArray.Parse(json);

                context.Contacts.Count();
                foreach (var var in googleSearch)
                {
                    if (var["name"] != null)
                    {
                        var emailsExist = var["emails"] != null;

                        var phonesExist = var["phones"] != null;

                        var contact = context.Contacts.Add(new Contact
                        {
                            Name = var["name"].ToString(),
                            Company = (var["company"] != null) ? var["company"].ToString() : null,
                            Notes = (var["notes"] != null) ? var["notes"].ToString() : null,
                            Position = (var["position"] != null) ? var["position"].ToString() : null,
                            SiteUrl = (var["site"] != null) ? var["site"].ToString() : null
                        });

                        if (emailsExist)
                        {
                            List<Email> emails = var["emails"].ToString().Split(',').Select(email => new Email
                            {
                                EmailAdress = email.Split('"')[1]
                            }).ToList();

                            contact.Emails = new List<Email>(emails);
                        }

                        if (phonesExist)
                        {
                              List<Phone> phones = var["phones"].ToString().Split(',').Select(phone => new Phone
                            {
                                PhoneNumber = phone.Split('"')[1]
                            }).ToList();

                            contact.Phones = new List<Phone>(phones);
                        }
                    }
                }
                context.SaveChanges();

                Console.WriteLine("Contacts imported from JSON file!");
            }
        }
        static void Main()
        {
            var context = new PhonebookContext();

            var data = context.Contacts;

            foreach (var contact in data)
            {
                Console.WriteLine("Name: {0}{1}{2}{3}{4}{5}{6}",contact.Name,
                    (contact.Position != null) ? "\nPosition: " + contact.Position : "",
                    (contact.Company != null) ?  "\nCompany: " + contact.Company : "",
                    (contact.Emails.Any()) ? "\nEmails: " + string.Join(", ",contact.Emails.Select(x => x.EmailAdress).ToList()) : "",
                    (contact.Phones.Any()) ? "\nPhones: " + string.Join(", ", contact.Phones.Select(p => p.PhoneNumber).ToList()) : "",
                    (contact.SiteUrl != null) ? "\nUrl: " + contact.SiteUrl : "",
                    (contact.Notes != null) ? "\nNotes: " + contact.Notes : "");
                Console.WriteLine();
            }
        }