//----------------------------------------------- Lägger till en Annons ---------------------------------------------- public void InsertAnnons(Annons annons) { // Skapar och initierar ett anslutningsobjekt. using (SqlConnection conn = CreateConnection()) { try { // exekveras specifierad lagrad procedur. SqlCommand cmd = new SqlCommand("AppSchema.usp_002_create_Annons", conn); cmd.CommandType = CommandType.StoredProcedure; //Lägger till de paramterar den lagrade proceduren kräver. cmd.Parameters.Add("@Rubrik", SqlDbType.VarChar, 50).Value = annons.Rubrik; cmd.Parameters.Add("@Beskrivning", SqlDbType.VarChar, 500).Value = annons.Beskrivning; cmd.Parameters.Add("@Pris", SqlDbType.Int, 4).Value = annons.Pris; cmd.Parameters.Add("@KategoriID", SqlDbType.Int, 4).Value = annons.KategoriID; cmd.Parameters.Add("@LanID", SqlDbType.Int, 4).Value = annons.LanID; // cmd.Parameters.Add("@AnnonsID", SqlDbType.Int, 4).Direction = ParameterDirection.Output; //Öppnar anslutningen, databasen conn.Open(); //Exekvera den lagrade proceduren. cmd.ExecuteNonQuery(); // Hämtar primärnyckelns värde för den nya posten och tilldelar Customer-objektet värdet. annons.AnnonsID = (int)cmd.Parameters["@AnnonsID"].Value; } catch { // Kastar ett eget undantag om ett undantag kastas. throw new ApplicationException("Det blev något fel i hämtningen från databasen!"); } } }
public void CreateAnnonsFormView_InsertItem(Annons annons) { if (ModelState.IsValid) { try { Service.SaveAnnons(annons); //Skickar meddelande om att annonsen sparades Page.SetTempData("SuccessMessage", "Du har nu lagt in denna annons på Planket."); //Skickas till annonsen som har lagts in med hjälp av id Response.RedirectToRoute("AnnonsDetails", new { id = annons.AnnonsID }); Context.ApplicationInstance.CompleteRequest(); } catch (Exception) //Fångar upp om någor gick fel { ModelState.AddModelError(String.Empty, "Ett fel inträffade då annonsen skulle läggas till."); } } }