public List <BorrowerRecord> GetCurrentBorrowers() { List <BorrowerRecord> currentBorrowers = new List <BorrowerRecord>(); try { XElement doc = XElement.Load(_bookCatalogPath); var borrowedBooks = doc.Elements(ConstantsBookRepository.BOOK_OBJECT) .Where(e => e.Element(ConstantsBookRepository.BORROWER_OBJECT).Element(ConstantsBookRepository.BORROWER_NAME).Value != "").ToList(); if (borrowedBooks != null) { foreach (XElement borrowedBook in borrowedBooks) { BorrowerRecord borrowerRecord = currentBorrowers .FirstOrDefault(b => b.LastBorrower.Name == borrowedBook.Element(ConstantsBookRepository.BORROWER_OBJECT).Element(ConstantsBookRepository.BORROWER_NAME).Value && b.LastBorrower.LastName == borrowedBook.Element(ConstantsBookRepository.BORROWER_OBJECT).Element(ConstantsBookRepository.BORROWER_LAST_NAME).Value); if (borrowerRecord != null) { borrowerRecord.NumberOfBooksBorrowed += 1; } else { currentBorrowers.Add(new BorrowerRecord() { LastBorrower = new Borrower() { Name = borrowedBook.Element(ConstantsBookRepository.BORROWER_OBJECT).Element(ConstantsBookRepository.BORROWER_NAME).Value, LastName = borrowedBook.Element(ConstantsBookRepository.BORROWER_OBJECT).Element(ConstantsBookRepository.BORROWER_LAST_NAME).Value }, NumberOfBooksBorrowed = 1 }); } } } } catch (Exception) { } return(currentBorrowers); }
public List <BorrowerRecord> GetCurrentBorrowers() { List <BorrowerRecord> currentBorrowers = new List <BorrowerRecord>(); try { List <Library> borrowedBooks = JsonConvert.DeserializeObject <List <Library> >(File.ReadAllText(_bookCatalogPath)) .Where(b => b.LastBorrower.Name != "").ToList(); if (borrowedBooks.Count > 0) { foreach (Library book in borrowedBooks) { BorrowerRecord borrowerRecord = currentBorrowers.FirstOrDefault(b => b.LastBorrower.Name == book.LastBorrower.Name && b.LastBorrower.LastName == book.LastBorrower.Lastname); if (borrowerRecord != null) { borrowerRecord.NumberOfBooksBorrowed += 1; } else { currentBorrowers.Add(new BorrowerRecord() { LastBorrower = new Borrower() { Name = book.LastBorrower.Name, LastName = book.LastBorrower.Lastname }, NumberOfBooksBorrowed = 1 }); } } } } catch (Exception) { } return(currentBorrowers); }