public void LoadProducts() { int i; IList <Product> productList = new List <Product>(); RestAPIDriver restAPI = new RestAPIDriver(clientURL, requestPath, username, password); DatabaseDriver databaseDriver = new DatabaseDriver(); var response = restAPI.EstCon(); if (response.IsSuccessful) { databaseDriver.FreeCartStorage(); databaseDriver.FreeCatalogStorage(); productList = restAPI.DeserializeLiveProduct(response); } else { //launch DB here System.Windows.MessageBox.Show("Offline Mode enabled!"); productList = databaseDriver.GetProductDB(); } IEnumerable <Product> sortedEnum = productList.OrderBy(p => p.ProductName); productList = sortedEnum.ToList(); Products = new ObservableCollection <Product>(); for (i = 0; i < productList.Count; i++) { Products.Add(productList[i]); } }