public List <Order> GetAllOrders() { List <Order> orders = new List <Order>(); List <Entities.Order> orderEntities = _dataAccessObjects.GetOrders(); if (orderEntities == null) { orders = new List <Order>(); } else { foreach (Entities.Order orderEntity in orderEntities) { //construct necessary information Order order = new Order(); order = Translators.Order.ToBusinessObject(orderEntity); order.Person = Translators.Person.ToBusinessObject(_dataAccessObjects.GetPersonByPersonId(order.Person.PersonId)); List <OrderItem> orderItems = Translators.OrderItem.ToBusinessObject(_dataAccessObjects.GetOrderItemByOrderId(order.OrderId)); if (orderItems != null) { for (int i = 0; i < orderItems.Count; i++) { orderItems[i].CatalogItem = Translators.CatalogItem.ToBusinessObject( _dataAccessObjects.GetCatalogItemByCatalogItemId(orderItems[i].CatalogItem.CatalogItemId)); } order.ItemList = orderItems; } //add to list orders.Add(order); } } return(orders); }