Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês

Evento ObjectDataSourceView.Deleted

 
System_CAPS_noteObservação

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Ocorre quando uma operação Delete foi concluída.

Namespace:   System.Web.UI.WebControls
Assembly:  System.Web (em System.Web.dll)

public event ObjectDataSourceStatusEventHandler Deleted

Manipular o Deleted eventos para examinar os valores de um valor de retorno e parâmetros de saída ou para determinar se uma exceção foi acionada após um Delete operação foi concluída. O valor de retorno, parâmetros de saída e propriedades de tratamento de exceção estão disponíveis no ObjectDataSourceStatusEventArgs objeto que está associado com o evento.

Para obter mais informações sobre a manipulação de eventos, consulte NIB: consumindo eventos.

O exemplo de código a seguir demonstra como usar um ObjectDataSource controle com um objeto comercial e um GridView controle para excluir dados. O GridView inicialmente exibe um conjunto de todos os funcionários, usando o método especificado pelo SelectMethod propriedade para recuperar os dados do EmployeeLogic objeto. Porque o AutoGenerateDeleteButton está definida como true, o GridView controlar automaticamente exibe um excluir botão.

Se você clicar no excluir botão, o Delete operação é executada usando o método especificado pelo DeleteMethod propriedade e os parâmetros que são especificados no DeleteParameters coleção. Neste exemplo de código, algumas etapas de pós-processamento e pré-processamento também são executadas. O NorthwindEmployeeDeleting delegado é chamado para manipular a Deleting evento antes do Delete operação é executada e o NorthwindEmployeeDeleted delegado é chamado para manipular a Deleted evento após o Delete operação estiver concluída, a Execute um tratamento de exceção. Neste exemplo, se um NorthwindDataException é gerada, ela será manipulada por este delegado.

Para examinar a implementação de EmployeeLogic objeto comercial de camada intermediária que usa este exemplo de código, consulte ObjectDataSourceStatusEventArgs.

<%@ Register TagPrefix="aspSample" Namespace="Samples.AspNet.CS" Assembly="Samples.AspNet.CS" %>
<%@ Import namespace="Samples.AspNet.CS" %>
<%@ Page language="c#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
private void NorthwindEmployeeDeleting(object source, ObjectDataSourceMethodEventArgs e)
{
  // The GridView passes the ID of the employee
  // to be deleted. However, the buisiness object, EmployeeLogic,
  // requires a NorthwindEmployee parameter, named "ne". Create
  // it now and add it to the parameters collection.
  IDictionary paramsFromPage = e.InputParameters;
  if (paramsFromPage["EmpID"] != null) {
    NorthwindEmployee ne
      = new NorthwindEmployee( Int32.Parse(paramsFromPage["EmpID"].ToString()));
    // Remove the old EmpID parameter.
    paramsFromPage.Clear();
    paramsFromPage.Add("ne", ne);
  }
}

private void NorthwindEmployeeDeleted(object source, ObjectDataSourceStatusEventArgs e)
{
  // Handle the Exception if it is a NorthwindDataException
  if (e.Exception != null)
  {

    // Handle the specific exception type. The ObjectDataSource wraps
    // any Exceptions in a TargetInvokationException wrapper, so
    // check the InnerException property for expected Exception types.
    if (e.Exception.InnerException is NorthwindDataException)
    {
      Label1.Text = e.Exception.InnerException.Message;
      // Because the exception is handled, there is
      // no reason to throw it.
      e.ExceptionHandled = true;
    }
  }
}

</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head>
    <title>ObjectDataSource - C# Example</title>
  </head>
  <body>
    <form id="Form1" method="post" runat="server">

        <asp:gridview
          id="GridView1"
          runat="server"
          datasourceid="ObjectDataSource1"
          autogeneratedeletebutton="true"
          autogeneratecolumns="false"
          datakeynames="EmpID">
          <columns>
            <asp:boundfield headertext="EmpID" datafield="EmpID" />
            <asp:boundfield headertext="First Name" datafield="FirstName" />
            <asp:boundfield headertext="Last Name" datafield="LastName" />
          </columns>
        </asp:gridview>

        <asp:objectdatasource
          id="ObjectDataSource1"
          runat="server"
          selectmethod="GetAllEmployees"
          deletemethod="DeleteEmployee"
          ondeleting="NorthwindEmployeeDeleting"
          ondeleted="NorthwindEmployeeDeleted"
          typename="Samples.AspNet.CS.EmployeeLogic">
          <deleteparameters>
            <asp:parameter name="EmpID" type="Int32" />
          </deleteparameters>
        </asp:objectdatasource>

        <asp:label id="Label1" runat="server" />

    </form>
  </body>
</html>

.NET Framework
Disponível desde 2.0
Retornar ao início
Mostrar: