Use the ItemInserted event to handle any errors : DetailsView « ADO.net Database « ASP.Net






Use the ItemInserted event to handle any errors


<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<script runat="server">

    protected void dtlProducts_ItemInserted(object sender, DetailsViewInsertedEventArgs e)
    {
        if (e.Exception != null)
        {
            e.ExceptionHandled = true;
            e.KeepInInsertMode = true;
            lblError.Visible = true;
        }
    }
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Insert Errors</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>

    <asp:Label
        id="lblError"
        Text="Could not insert record"
        Visible="false"
        EnableViewState="false"
        CssClass="error"
        Runat="server" />

    <asp:DetailsView
        id="dtlProducts"
        AllowPaging="true"
        DataSourceID="srcProducts"
        AutoGenerateInsertButton="true"
        OnItemInserted="dtlProducts_ItemInserted"
        Runat="server" />

    <asp:SqlDataSource
        id="srcProducts"
        ConnectionString="<%$ ConnectionStrings:Products %>"
        SelectCommand="SELECT Title,Director,InStocks FROM Products"
        InsertCommand="INSERT Products (Title,Director,InStocks)VALUES (@Title,@Director,
        Runat="server" />

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


File: Web.config

<configuration>
  <connectionStrings>
    <add name="Products" 
         connectionString="Data Source=.\SQLEXPRESS;
         AttachDbFilename=|DataDirectory|MyDatabase.mdf;Integrated Security=True;User Instance=True" />
  </connectionStrings>
</configuration>            

 








Related examples in the same category

1.Link DetailsView with SqlDataSource and do the editing
2.Using a PagerTemplate to customize the paging interface.
3.Editing a record with the DetailsView control.
4.Displaying a Master/Detail form with the DetailsView control.
5.Using a template when editing with the DetailsView control.
6.Handling Concurrency Issues: CompareAllValues or OverwriteChanges
7.Inserting Data with the DetailsView Control
8.Deleting Data with the DetailsView Control
9.Adding an AutoGenerateInsertButton attribute to the DetailsView
10.Using the GridView and DetailsView together
11.Enabling paging on the DetailsView control
12.Customizing the display of the DetailsView control