private static void ImportContactToDatabase(ContactDTO contactDTO) { if (contactDTO.Name == null) { throw new ArgumentException("Name is required"); } var newContact = new Contact() { Name = contactDTO.Name, Company = contactDTO.Company, Position = contactDTO.Position, Url = contactDTO.Site, Notes = contactDTO.Notes }; if (contactDTO.Emails != null) { newContact.Emails = contactDTO.Emails.Select(e => new Email() { EmailAddress = e }).ToList(); } if (contactDTO.Phones != null) { newContact.Phones = contactDTO.Phones.Select(p => new Phone() { PhoneNumber = p }).ToList(); } var context = new PhonebookContext(); context.Contacts.Add(newContact); context.SaveChanges(); }
public System.Collections.IEnumerable GetSuggestions(string filter) { try { if (!IsEnabeled) { throw new Exception(); } PhonebookContext db = new PhonebookContext(ConnectionStringBuilder.ConnectionString); if (SearchType == TypeOfSeacrh.EMPLOYEE) { return(db.Employees.Where(r => r.Name.Contains(filter)).Select(s => s.Name).ToList()); } else if (SearchType == TypeOfSeacrh.PHONE) { return(db.PhoneNumbers.Where(r => r.Number.Contains(filter)).Select(s => s.Number).ToList()); } else { return(null); } } catch { return(null); } }
internal async virtual void ReFillDataGrid() { Dispatcher.Invoke(() => { progressBar.Visibility = Visibility.Visible; btnInsert.IsEnabled = false; btnUpdate.IsEnabled = false; }); await Task.Run(() => { try { //Thread.Sleep(1000); PhonebookContext db = new PhonebookContext(ConnectionStringBuilder.ConnectionString); var x = db.Categories.SingleOrDefault(r => r.Id.ToString() == categoryId); if (x != null) { //dataGrid1.ItemsSource = x.Rows.ToList().Select(r => new { Employee = r.Employees.ToList(), Internal = r.PhoneNumbers.Where(t => t.IsInternal).ToList(), External = r.PhoneNumbers.Where(t => !t.IsInternal).ToList() }).ToList(); } List <GridRow> Rows = new List <GridRow>(); x.Rows.ToList().ForEach(r => { GridRow newRow = new GridRow(); newRow.Id = r.Id.ToString(); foreach (var emp in r.Employees) { newRow.Employees += emp.Name + Environment.NewLine + Environment.NewLine; } foreach (var phone in r.PhoneNumbers) { if (phone.IsInternal) { newRow.InternalNumbers += phone.Number.AddPreNumber().AddHalfSpace() + Environment.NewLine + Environment.NewLine; } else { newRow.ExternalNumbers += phone.Number.AddHalfSpace() + Environment.NewLine + Environment.NewLine; } } Rows.Add(newRow); }); Dispatcher.Invoke(() => { dataGrid1.ItemsSource = Rows; }); } catch { } }); Dispatcher.Invoke(() => { progressBar.Visibility = Visibility.Collapsed; btnInsert.IsEnabled = true; btnUpdate.IsEnabled = true; }); }
static void Main() { Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US"); var context = new PhonebookContext(); /*var listChannelsAndMessages = context.Channels.ToList(); foreach (var ch in listChannelsAndMessages) { Console.WriteLine("--{0}", ch.Name); Console.WriteLine("# Messages #"); foreach (var msg in ch.Messages) { Console.WriteLine("Content: {0}; DateTime: {1}; User: {2}", msg.Content, msg.Date, msg.User.Username); } }*/ var json = File.ReadAllText("../../messages.json"); var serializer = new JavaScriptSerializer(); var msgs = serializer.Deserialize<MessagesDTO[]>(json); foreach (var msg in msgs) { try { ProcessMsg(msg); Console.WriteLine(); } catch (Exception ex) { Console.WriteLine("Error: {0}", ex.Message); } } }
private static void ProcessMsg(MessagesDTO msg) { if (msg.Content == null) { throw new ArgumentException("Messages content is required"); } if (msg.DateTime == null) { throw new ArgumentException("Datetime is required"); } if (msg.Recipient == null) { throw new ArgumentException("Recipient is required"); } if (msg.Sender == null) { throw new ArgumentException("Sender is required"); } var context = new PhonebookContext(); var usMsg = new UserMessage() { Content = msg.Content, Date = msg.DateTime, Recipient = context.Users.FirstOrDefault(u => u.Username == msg.Recipient), Sender = context.Users.FirstOrDefault(u => u.Username == msg.Sender) }; context.UserMessages.Add(usMsg); context.SaveChanges(); Console.WriteLine("Message \"{0}\" imported", msg.Content); }
static void Main(string[] args) { PhonebookContext phCtx = new PhonebookContext(); // Create a phonebook instance Phonebook repo = new Phonebook(); Phonebook p1 = new Phonebook("0872878566", "Ronan", "1 Main Street"); Phonebook p2 = new Phonebook("1111111111", "Rick", "2 Main Street"); Phonebook p3 = new Phonebook("1122211111", "Rachel", "5 Main Street"); // Test can add instance to PhoneBooks db repo.InsertPhonebook(p1); repo.InsertPhonebook(p2); repo.InsertPhonebook(p3); // Test can update Phonebook contact repo.UpdatePhonebookContact(new Phonebook { Name = "Ronan", Number = "09812270809", Address = "3 Main Sreet", PhoneID = 1 }); // Test can remove Phonebook contact repo.DeleteContact(p3); // Report Full list repo.ReportContactList(); // Report contact details by number repo.FindNumber(p2); // Report contact details by name Phonebook p4 = new Phonebook("888888888", "Ronan", "6 Main Street"); p4.InsertPhonebook(p4); // To test it finds all "Ronans" repo.FindName(p1); }
private void SeedDatabase(IApplicationBuilder app) { using (IServiceScope serviceScope = app.ApplicationServices.GetRequiredService <IServiceScopeFactory>().CreateScope()) { PhonebookContext context = serviceScope.ServiceProvider.GetService <PhonebookContext>(); PhonebookContextSeed.SeedAsync(context, 0, _useInMemory).Wait(); } }
static void Main() { var context = new PhonebookContext(); var listAllData = context.Contacts .Include(c => c.Emails) .Include(c => c.Phones) .ToList(); foreach (var contact in listAllData) { Console.WriteLine("Name: {0}", contact.Name); if (contact.Company != null) Console.WriteLine(" Company name: {0}", contact.Company); if (contact.Postion != null) Console.WriteLine(" Position: {0}", contact.Postion); if (contact.Url != null) Console.WriteLine(" Url: {0}", contact.Url); if (contact.Phones.Count > 0) { string phones = contact.Phones.Aggregate("", (current, phone) => current + (" " + phone.PhoneNumber)); phones = phones.Trim(); Console.Write(" Phones: {0}", phones); Console.WriteLine(); } if (contact.Emails.Count > 0) { string emails = contact.Emails.Aggregate("", (current, email) => current + (" " + email.EmailAddress)); emails = emails.Trim(); Console.Write(" Emails: {0}", emails); Console.WriteLine(); } if (contact.Notes.Count > 0) { string notes = contact.Notes.Aggregate("", (current, note) => current + (" " + note)); notes = notes.Trim(); Console.Write(" Notes: {0}", notes); Console.WriteLine(); } Console.WriteLine(); } Console.WriteLine("\n################################################################################################\n"); var json = File.ReadAllText("../../contacts.json"); var serializer = new JavaScriptSerializer(); var contacts = serializer.Deserialize<ContactDTO[]>(json); foreach (var contact in contacts) { try { SaveContactInDb(contact); Console.WriteLine("Contact {0} imported", contact.Name); } catch (Exception ex) { Console.WriteLine("Error: {0}", ex.Message); } } }
public EntryTests() { DbContextOptions dbOptions = new DbContextOptionsBuilder <PhonebookContext>() .UseInMemoryDatabase(databaseName: "Phonebook") .Options; _context = new PhonebookContext(dbOptions); PhonebookContextSeed.SeedAsync(_context).Wait(); _entryRepository = new EntryRepository(_context); _phonebookCount = _entryRepository.GetAllAsync().Result.Count; }
// 1.Report the full contents of the phone book in name order public void ReportContactList() { using (PhonebookContext db = new PhonebookContext()) { var fullcontents = db.Phonebooks.OrderBy(c => c.Name); Console.WriteLine("\n---- Contact list in name order -----"); foreach (Phonebook contact in fullcontents) { Console.WriteLine("\nContact Name: " + contact.Name + "\nContact Number: " + contact.Number + "\nAddress: " + contact.Address); } } }
public ActionResult AddContact(string firstName, string lastName, string phoneNumber) { using (PhonebookContext db = new PhonebookContext()) { var contact = new Phonebook(); contact.FirstName = firstName; contact.LastName = lastName; contact.PhoneNumber = phoneNumber; db.Phonebooks.Add(contact); db.SaveChanges(); return(RedirectToAction("Phonebook")); } }
public static void Main() { using (var context = new PhonebookContext()) { var contacts = context.Contacts .Include(p => p.Phones) .Include(e => e.Emails) .Select(c => new { c.Name, Phones = c.Phones.Select(p => p.Number).ToList(), Emails = c.Emails.Select(p => p.Address).ToList(), }); foreach (var contact in contacts) { Console.WriteLine("Name: {0}", contact.Name); Console.WriteLine("\tPhones: {0}", string.Join(", ", contact.Phones)); Console.WriteLine("\tEmails: {0}", string.Join(", ", contact.Emails)); } } }
static void Main(string[] args) { var context = new PhonebookContext(); //1.ListContactsWithTheirEmailAndPhone //var contacts = context.Contacts // .Select(c => new // { // c.Name, // Emails = c.Emails.Select(e => e.EmailAddress), // Phones = c.Phones.Select(p => p.PhoneNumber) // }); //foreach (var contact in contacts) //{ // Console.WriteLine(contact.Name); // foreach (var email in contact.Emails) // { // Console.WriteLine(email); // } // foreach (var phone in contact.Phones) // { // Console.WriteLine(phone); // } //} string json = File.ReadAllText("../../contacts.json"); var contacts = JsonConvert.DeserializeObject<List<JObject>>(json); foreach (var contact in contacts) { Console.WriteLine(contact["name"]); } }
private static void SaveContactInDb(ContactDTO contact) { if (contact.Name == null) { throw new ArgumentException("Name is required"); } var ct = new Contact() { Name = contact.Name }; if (contact.Company != null) ct.Company = contact.Company; if (contact.Site != null) ct.Url = contact.Site; if (contact.Position != null) ct.Postion = contact.Position; if (contact.Notes != null) { ct.Notes = new HashSet<string>(); ct.Notes.Add(contact.Notes); } if (contact.Emails != null) { ct.Emails = new HashSet<Email>(); foreach (var em in contact.Emails.Select(email => new Email() {EmailAddress = email})) { ct.Emails.Add(em); } } if (contact.Phones != null) { ct.Phones = new HashSet<Phone>(); foreach (var ph in contact.Phones.Select(phone => new Phone() {PhoneNumber = phone})) { ct.Phones.Add(ph); } } var context = new PhonebookContext(); context.Contacts.Add(ct); context.SaveChanges(); }