ListViewInsertedEventArgs.AffectedRows Propriedade
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Obtém o número de linhas afetadas pela operação de inserção.
public:
property int AffectedRows { int get(); };
public int AffectedRows { get; }
member this.AffectedRows : int
Public ReadOnly Property AffectedRows As Integer
Valor de Propriedade
O número de linhas afetadas pela operação de inserção.
Exemplos
O exemplo seguinte mostra como usar o ListViewInsertedEventArgs objeto que é passado a um handler para o ItemInserted evento determinar se uma exceção foi levantada durante a operação de inserção. Este exemplo de código faz parte de um exemplo maior fornecido para a ListViewInsertedEventArgs classe.
void ContactsListView_ItemInserted(Object sender, ListViewInsertedEventArgs e)
{
if (e.Exception != null)
{
if (e.AffectedRows == 0)
{
e.KeepInInsertMode = true;
Message.Text = "An exception occurred inserting the new Contact. " +
"Please verify your values and try again.";
}
else
Message.Text = "An exception occurred inserting the new Contact. " +
"Please verify the values in the newly inserted item.";
e.ExceptionHandled = true;
}
}
Sub ContactsListView_ItemInserted(ByVal sender As Object, ByVal e As ListViewInsertedEventArgs)
If e.Exception IsNot Nothing Then
If e.AffectedRows = 0 Then
e.KeepInInsertMode = True
Message.Text = "An exception occurred inserting the new Contact. " & _
"Please verify your values and try again."
Else
Message.Text = "An exception occurred inserting the new Contact. " & _
"Please verify the values in the newly inserted item."
End If
e.ExceptionHandled = True
End If
End Sub
Observações
Use a AffectedRows propriedade para determinar o número de registos afetados pela operação de inserção, conforme devolvido pelo controlo de fonte de dados. Esta propriedade é tipicamente usada nos seguintes cenários:
Para verificar que apenas um registo foi inserido. Por vezes, uma instrução insert mal escrita pode inserir vários registos.
Para verificar que um registo não foi inserido porque ocorreu um erro durante a operação de inserção, mas não foi criada uma exceção.
Para verificar se um registo foi inserido quando um controlo de fonte de dados que suporta deteção de conflitos (concorrência otimista) tem a ConflictDetection sua propriedade definida para o
ConflictOptions.CompareAllValuesvalor da enumeração. Controlos que suportam esta propriedade incluem os SqlDataSource controlos e (e ObjectDataSource controlos). Quando a propriedade tem este valor, um registo pode não ser inserido se tiver o mesmo valor-chave que um registo inserido por outro utilizador.