DetailsViewInsertedEventArgs.Exception Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Ekleme işlemi sırasında oluşturulan özel durumu (varsa) alır.
public:
property Exception ^ Exception { Exception ^ get(); };
public Exception Exception { get; }
member this.Exception : Exception
Public ReadOnly Property Exception As Exception
Özellik Değeri
Exception Ekleme işlemi sırasında oluşturulan özel durumu temsil eden bir.
Örnekler
Aşağıdaki kod örneği, ekleme işlemi sırasında bir özel durumun tetiklenip tetiklenmediğini belirlemek için özelliğinin nasıl kullanılacağını Exception gösterir.
<%@ 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">
void CustomerDetailsView_ItemInserted(Object sender,
DetailsViewInsertedEventArgs e)
{
// Use the Exception property to determine whether an exception
// occurred during the insert operation.
if (e.Exception == null && e.AffectedRows == 1)
{
// Use the Values property to get the value entered by
// the user for the CompanyName field.
String name = e.Values["CompanyName"].ToString();
// Display a confirmation message.
MessageLabel.Text = name + " added successfully. ";
}
else
{
// Insert the code to handle the exception.
MessageLabel.Text = e.Exception.Message;
// Use the ExceptionHandled property to indicate that the
// exception is already handled.
e.ExceptionHandled = true;
// When an exception occurs, keep the DetailsView
// control in insert mode.
e.KeepInInsertMode = true;
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewInsertedEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewInsertedEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogenerateinsertbutton="true"
autogeneraterows="true"
allowpaging="true"
oniteminserted="CustomerDetailsView_ItemInserted"
runat="server">
<fieldheaderstyle backcolor="Navy"
forecolor="White"/>
</asp:detailsview>
<asp:label id="MessageLabel"
forecolor="Red"
runat="server"/>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the web.config file. -->
<asp:sqldatasource id="DetailsViewSource"
selectcommand="Select [CustomerID], [CompanyName], [Address],
[City], [PostalCode], [Country] From [Customers]"
insertcommand="INSERT INTO [Customers]([CustomerID],
[CompanyName], [Address], [City], [PostalCode],
[Country]) VALUES (@CustomerID, @CompanyName, @Address,
@City, @PostalCode, @Country)"
connectionstring=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
<%@ Page language="VB" autoeventwireup="false" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub CustomerDetailsView_ItemInserted(ByVal sender As Object, _
ByVal e As DetailsViewInsertedEventArgs) _
Handles CustomerDetailsView.ItemInserted
' Use the Exception property to determine whether an exception
' occurred during the insert operation.
If e.Exception Is Nothing And e.AffectedRows = 1 Then
' Use the Values property to get the value entered by
' the user for the CompanyName field.
Dim name As String = e.Values("CompanyName").ToString()
' Display a confirmation message.
MessageLabel.Text = name & " added successfully. "
Else
' Insert the code to handle the exception.
MessageLabel.Text = e.Exception.Message
' Use the ExceptionHandled property to indicate that the
' exception is already handled.
e.ExceptionHandled = True
' When an exception occurs, keep the DetailsView
' control in insert mode.
e.KeepInInsertMode = True
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>DetailsViewInsertedEventArgs Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>DetailsViewInsertedEventArgs Example</h3>
<asp:detailsview id="CustomerDetailsView"
datasourceid="DetailsViewSource"
datakeynames="CustomerID"
autogenerateinsertbutton="true"
autogeneraterows="true"
allowpaging="true"
runat="server">
<fieldheaderstyle backcolor="Navy"
forecolor="White"/>
</asp:detailsview>
<asp:label id="MessageLabel"
forecolor="Red"
runat="server"/>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. Use an ASP.NET -->
<!-- expression to retrieve the connection string value -->
<!-- from the web.config file. -->
<asp:sqldatasource id="DetailsViewSource"
selectcommand="Select [CustomerID], [CompanyName], [Address],
[City], [PostalCode], [Country] From [Customers]"
insertcommand="INSERT INTO [Customers]([CustomerID], [CompanyName],
[Address], [City], [PostalCode], [Country])
VALUES (@CustomerID, @CompanyName, @Address, @City,
@PostalCode, @Country)"
connectionstring=
"<%$ ConnectionStrings:NorthWindConnectionString%>"
runat="server"/>
</form>
</body>
</html>
Açıklamalar
Exception Ekleme işlemi sırasında oluşturulan özel durumu (varsa) belirlemek için özelliğini kullanın. Hiçbir özel durum tetiklendiyse, bu özellik döndürür null
.
Not
Bir özel durum oluşturulduysa ve özel durumu olay işleyicisinde işlemeye karar verirseniz, özelliğini true
olarak ayarladığınızdan ExceptionHandled emin olun; aksi takdirde, özel durum işleme için çağrı yığınındaki bir sonraki yönteme geçirilir.