public Retail Create(Retail retail) { Retail retrieved = null; SqlConnection connection = ConnectionFactory.GetConnection (); SqlCommand command = new SqlCommand (QUERY_CREATE, connection); command.Parameters.AddWithValue ("@ItemId", retail.Item.Id); command.Parameters.AddWithValue ("@StoreId", retail.Store.Id); command.Parameters.AddWithValue ("@Price", retail.Price); command.Parameters.AddWithValue ("@Position", retail.Position); try { connection.Open (); int id = (int) command.ExecuteScalar (); retrieved = GetById (id); } finally { connection.Close (); } return retrieved; }
public Retail GetById(int id) { Retail retail = new Retail (); SqlConnection connection = ConnectionFactory.GetConnection (); SqlCommand command = new SqlCommand (QUERY_BY_ID, connection); command.Parameters.AddWithValue ("@Id", id); try { connection.Open (); SqlDataReader reader = command.ExecuteReader (); while ( reader.Read () ) { retail = ReadRetail (reader); } reader.Close (); } finally { connection.Close (); } return retail; }
private Retail ReadRetail(SqlDataReader reader) { Retail retail = new Retail (); Item item = new Item (); Store store = new Store (); item.Id = (int) reader["ItemId"]; item.Name = reader["ItemName"].ToString (); item.Category = reader["Category"].ToString (); item.Brand = reader["Brand"].ToString (); item.Description = reader["Description"].ToString (); store.Id = (int) reader["StoreId"]; store.Name = reader["StoreName"].ToString (); store.Franchise = reader["Franchise"].ToString (); store.Address = reader["Address"].ToString (); store.Longitude = (double) reader["Longitude"]; store.Latitude = (double) reader["Latitude"]; retail.Id = (int) reader["Id"]; retail.Store = store; retail.Item = item; retail.Price = (decimal) reader["Price"]; retail.Position = (int) reader["Position"]; return retail; }