📜  ASP.NET WP-删除数据库数据

📅  最后修改于: 2020-11-21 05:31:36             🧑  作者: Mango


在本章中,我们将介绍如何删除现有的数据库记录。该主题与上一章类似,除了-我们将删除记录而不是更新记录。删除和更新过程几乎相同,只是删除更简单。此示例还将包含两个网页。

  • 用户将在第一页上选择要删除的记录。

  • 然后在第二页上显示要删除的记录,以便用户可以确认他/她想要删除该记录。

如何删除数据库记录?

让我们看一个简单的示例,在该示例中,我们将删除现有的数据库记录。首先,我们需要创建一个新的CSHTML页面。

删除记录

在“名称”字段中输入ListCustomersForDelete.cshtml ,然后单击“确定”。

现在,在ListCustomersForDelete.cshtml文件中替换以下代码。

@{
   var db = Database.Open("WebPagesCustomers");
   var selectQueryString = "SELECT * FROM Customers ORDER BY FirstName";
}



   
   
      Delete a Customer
      
   
   
   
      

Delete a Customer

@foreach(var row in db.Query(selectQueryString)){ }
  First Name Last Name Address
Delete @row.FirstName @row.LastName @row.Address

如您所见,以上页面与EditCustomers.cshtml页面类似,唯一的不同是它没有为每个客户显示Edit链接。使用以下代码添加“删除”链接。完成此操作后,它将显示“删除”链接,这将有助于删除所选记录。

从数据库中删除客户

我们应该首先创建一个CHTML文件,如以下屏幕截图所示。

删除客户

在名称字段中输入DeleteCustomer.cshtml ,然后单击“确定”。现在,使用以下代码替换DeleteCustomer.cshtml文件。

@{
   var db = Database.Open("WebPagesCustomers");
   var CustomerId = UrlData[0];
   
   if (CustomerId.IsEmpty()) {
      Response.Redirect("~/ListCustomersForDelete");
   }
   var customer = db.QuerySingle("SELECT * FROM CUSTOMERS WHERE ID = @0", CustomerId);
   
   if( IsPost && !CustomerId.IsEmpty()) {
      var deleteQueryString = "DELETE FROM Customers WHERE Id=@0";
      db.Execute(deleteQueryString, CustomerId);
      Response.Redirect("~/ListCustomersForDelete");
   }
}



   
   
      Delete Customer
   
   
   
      

Delete Customer - Confirmation

Are you sure you want to delete the following Customer?

FirstName: @customer.FirstName
LastName: @customer.LastName
Address: @customer.Address

现在,让我们运行该应用程序并指定以下URL- http:// localhost:36905 / ListCustomersForDelete ,您将看到以下网页。

删除客户

您可以从数据库中看到所有客户,还可以看到每个客户的“删除”链接。让我们选择Kerry Hill的Delete链接,您将看到以下页面。

删除确认

显示该客户的所有信息。当您单击删除按钮时,该客户将从数据库中删除。

让我们单击Delete按钮,您将看到它已从数据库中删除,如以下屏幕快照所示。

删除客户记录

现在数据库只有两个记录。