// GET api/contactinfo public ContactInfoViewModel Get() { // Get Person data model from the data service var person = service.GetPersonByUsername(authenticatedUser, new PersonIncludes { Accounts = false, Addressses = true, Phones = true, AccountTransactions = false }); // Create a Holder view model and populate data from Person data model var contactInfo = new ContactInfoViewModel(); contactInfo.EmailAddress = person.EmailAddress; contactInfo.Addresses = (from a in person.Addresses select new AddressViewModel { AddressID = a.AddressID, Type = a.AddressType.Name, StreetAddress = a.Address.StreetAddress, City = a.Address.City, State = a.Address.State, Zip = a.Address.Zip, AddressTypeID = a.AddressTypeID }).ToList(); contactInfo.PhoneNumbers = (from p in person.Phones select new PhoneViewModel { PhoneType = p.PhoneType.Name, PhoneTypeID = p.PhoneTypeID, Number = p.Number }).ToList(); return contactInfo; }
// GET api/contactinfo public ContactInfoViewModel Get() { // Get Person data model from the data service var person = service.GetPerson(authenticatedUser, new PersonIncludes { Accounts = false, Addressses = true, Phones = true, AccountTransactions = false }); // Create a Holder view model and populate data from Person data model var contactInfo = new ContactInfoViewModel(); contactInfo.EmailAddress = person.EmailAddress; contactInfo.Addresses = (from a in person.Addresses select new AddressViewModel { AddressID = a.AddressID, Type = a.AddressType.Name, StreetAddress = a.Address.StreetAddress, City = a.Address.City, State = a.Address.State, Zip = a.Address.Zip, AddressTypeID = a.AddressTypeID }).ToList(); if (!contactInfo.Addresses.Any(a => a.Type == "Work")) { contactInfo.Addresses.Add(new AddressViewModel { AddressID = 0, Type = "Work", AddressTypeID = 2 }); } contactInfo.PhoneNumbers = (from p in person.Phones select new PhoneViewModel { PhoneType = p.PhoneType.Name, PhoneTypeID = p.PhoneTypeID, Number = p.Number }).ToList(); if (!contactInfo.PhoneNumbers.Any(a => a.PhoneType == "Office")) { contactInfo.PhoneNumbers.Add(new PhoneViewModel { PhoneType = "Office", PhoneTypeID = 2, Number = string.Empty }); } if (!contactInfo.PhoneNumbers.Any(a => a.PhoneType == "Cell")) { contactInfo.PhoneNumbers.Add(new PhoneViewModel { PhoneType = "Cell", PhoneTypeID = 3, Number = string.Empty }); } return contactInfo; }