private dto.ProductModel GetProduct(int id) { var ret = new dto.ProductModel(); var cmd = this.MySqlDB.Connection.CreateCommand() as MySqlCommand; cmd.CommandText = @"SELECT ProductId, ProductName, ProductPrice, ProductImage, ProductCode, ProductLongDesc, ProductUses, ProductIngredients, ProductPackaging FROM Products Where ProductID='" + id + "';"; using (var reader = cmd.ExecuteReader()) while (reader.Read()) { var t = new dto.ProductModel() { ProductId = reader.GetFieldValue <int>(0), ProductName = reader.GetFieldValue <string>(1).ToUpper(), ProductPrice = reader.GetFieldValue <Single>(2), ProductImage = reader.GetFieldValue <string>(3), ProductCode = reader.GetFieldValue <string>(4), ProductLongDesc = reader.GetFieldValue <string>(5), ProductUses = reader.GetFieldValue <string>(6), ProductIngredients = reader.GetFieldValue <string>(7), ProductPackaging = reader.GetFieldValue <string>(8) }; ret = t; } return(ret); }
private async Task <List <dto.ProductModel> > GetProducts(string type, string category, string dollar) { string toCurrency = dollar; Single price = 0; float exchangeRate = 1; if ((toCurrency != "") && (toCurrency.ToUpper() != "NZD")) { exchangeRate = CurrencyConvertor.GetExchangeRate(toCurrency); } if (category != null) { category = category.Replace("-", " "); } var ret = new List <dto.ProductModel>(); var cmd = this.MySqlDB.Connection.CreateCommand() as MySqlCommand; string query = @"SELECT p.ProductId, p.ProductName, p.ProductPrice, p.ProductImage, p.ProductCode, c.CategoryID, c.categoryname from products p inner join productcategories c on p.ProductCategoryID=c.categoryid "; if (type == "featured") { query += "where productID = 15 or productID = 8 or productID = 9"; } if ((type == "category") && (category.ToLower() != "all")) { query += "where categoryname = '" + category + "'"; } query += ";"; System.Diagnostics.Debug.WriteLine("Type: " + type); System.Diagnostics.Debug.WriteLine("Category: " + category); System.Diagnostics.Debug.WriteLine("Query: " + query); cmd.CommandText = query; using (var reader = await cmd.ExecuteReaderAsync()) while (await reader.ReadAsync()) { price = reader.GetFieldValue <Single>(2); var t = new dto.ProductModel() { ProductId = reader.GetFieldValue <int>(0), ProductName = reader.GetFieldValue <string>(1).ToUpper(), ProductPrice = price * exchangeRate, ProductImage = reader.GetFieldValue <string>(3), ProductCode = reader.GetFieldValue <string>(4), CategoryID = reader.GetFieldValue <int>(5), CategoryName = reader.GetFieldValue <string>(6) }; ret.Add(t); } return(ret); }