//----------------------------------------------- Tar bort EN kategorityp ---------------------------------------------- public void DeleteKategoriTyp(KategoriTyp kategori) { // Skapar och initierar ett anslutningsobjekt. using (SqlConnection conn = CreateConnection()) { try { // exekveras specifierad lagrad procedur. SqlCommand cmd = new SqlCommand("AppSchema.usp_001_delete_Kategori", conn); cmd.CommandType = CommandType.StoredProcedure; //Lägger till den parameter som den lagrade proceduren kärver cmd.Parameters.Add("@KategoriID", SqlDbType.Int, 4).Value = kategori.KategoriID; //Öppnar anslutningen, databasen conn.Open(); //Exekvera den lagrade proceduren. cmd.ExecuteNonQuery(); } catch { // Kastar ett eget undantag om ett undantag kastas. throw new ApplicationException("Det blev något fel i hämtningen från databasen!"); } } }
//----------------------------------------------- Uppdaterar en kategorityp ---------------------------------------------- public void UpdateKategori(KategoriTyp kategori) { // Skapar och initierar ett anslutningsobjekt. using (SqlConnection conn = CreateConnection()) { try { // exekveras specifierad lagrad procedur. SqlCommand cmd = new SqlCommand("AppSchema.usp_001_update_Kategori", conn); //Skapa nu update Procedure cmd.CommandType = CommandType.StoredProcedure; //Lägger till de paramterar den lagrade proceduren kräver. cmd.Parameters.Add(new SqlParameter("@KategoriTyp", SqlDbType.VarChar, 25)); cmd.Parameters["@KategoriTyp"].Value = kategori.Kategorityp; //Id cmd.Parameters.Add(new SqlParameter("@KategoriID", SqlDbType.Int, 4)); cmd.Parameters["@KategoriID"].Value = kategori.KategoriID; //Öppnar anslutningen, databasen conn.Open(); //Exekvera den lagrade proceduren. cmd.ExecuteNonQuery(); // Hämtar primärnyckelns värde för den nya posten och tilldelar kategori-objektet värdet. kategori.KategoriID = (int)cmd.Parameters["@KategoriID"].Value; } catch { // Kastar ett eget undantag om ett undantag kastas. throw new ApplicationException("Det blev något fel i hämtningen från databasen!"); } } }
// The id parameter name should match the DataKeyNames value set on the control public void KategoriListView_DeleteItem(KategoriTyp kategori) { if (ModelState.IsValid) { try { Service.DeleteKategoriTyp(kategori); //Skickar meddelande om att man har rederat en kategori Page.SetTempData("SuccessMessage", "Du har raderat en kategori."); //Skickas tillbaka till kategori sidan Response.RedirectToRoute("KategoriPage"); Context.ApplicationInstance.CompleteRequest(); } catch (Exception)//Fångar upp om någor gick fel { ModelState.AddModelError(String.Empty, "Du kan inte ta bort en kategori som finns på en annons."); } //Ett oväntat fel inträffade då kunduppgiften skulle tas bort. } }
//Sparar en kategori public void KategoriListView_InsertItem(KategoriTyp kategori) { if (ModelState.IsValid) { try { Service.SaveKategori(kategori); //Skickar meddelande om att kategori sparades Page.SetTempData("SuccessMessage", "Du har lagt till en kategori."); //Skickas tillbaka till kategori sidan Response.RedirectToRoute("KategoriPage"); Context.ApplicationInstance.CompleteRequest(); } catch (Exception) //Fångar upp om någor gick fel { ModelState.AddModelError(String.Empty, "Ett fel inträffade då en kategori skulle läggas till."); } } }