Опубликован: 15.06.2011 | Доступ: свободный | Студентов: 701 / 55 | Оценка: 4.25 / 4.00 | Длительность: 14:09:00
Самостоятельная работа 4:

Web Matrix. Работа с данным

4.В текущем проекте создадим CSHTML файл, и назовем его Deleteproduct.cshtml:

5.Заменим исходный код страницы DeleteProduct.cshtml на:

@{
  var db = Database.Open("SmallBakery");
  var productId = UrlData[0];
  if (productId.IsEmpty()) {
    Response.Redirect(@Href("/ListProductsForDelete"));
  }
  var prod = db.QuerySingle("SELECT * FROM Product WHERE id = @0", productId);
  if( IsPost && !productId.IsEmpty()) 
 {            
    var deleteQueryString = "DELETE FROM Product WHERE id = @0";
    db.Execute(deleteQueryString, productId);   
    Response.Redirect("/ListProductsForDelete");
  }
}

<!DOCTYPE html>
<html
<head>
    <title>Delete Product</title>
</head>
<body>
  <h1>Delete Product - Confirmation</h1>
  <form method="post" action="" name="form">
    <p>Are you sure you want to delete the following product?</p>
    <p>
Name: @prod.name <br /> 
       Description: @prod.description <br />
       Price: @prod.price
   </p>
    <p><input type="submit" value="Delete" /></p>
  </form>
</body></html>

Принцип работы страницы такой же, как и UpdateProducts.cshtml. Только вместо SQL запроса на обновление используется SQL запрос на удаление записи:

var deleteQueryString = "DELETE FROM Product WHERE id = @0";
    db.Execute(deleteQueryString, productId);   
    Response.Redirect("/ListProductsForDelete");

6.Запустим страницу ListProductsForDelete.cshtml и выберем последнюю запись на удаление:

7.Нажмем на кнопку "Delete". Из списка исчезнет последняя запись: