CSharp Handling Concurrency Issues: Compareallvalues Or Overwritechanges – ADO.Net Database

<%@ 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 srcProducts_Updated(object sender, SqlDataSourceStatusEventArgs e)
    {
        if (e.AffectedRows == 0)
            lblMessage.Text = "Could not update record";
    }
</script><html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
    <title>Concurrency</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>    <asp:Label ID="lblMessage" EnableViewState="false" runat="server" />    <asp:DetailsView
        id="dtlProducts"
        DataKeyNames="Id"
        AutoGenerateEditButton="true"
        AllowPaging="true"
        DataSourceID="srcProducts"
        Runat="server" />    <asp:SqlDataSource
        id="srcProducts"
        ConnectionString="<%$ ConnectionStrings:Products %>"
        SelectCommand="SELECT Id,Title,Director,InStocks FROM Products"
        UpdateCommand="UPDATE Products
            SET Title=@Title,Director=@Director,InStocks=
            WHERE Title=@original_Title
            AND Director=@original_Director
            AND InStocks=@InStocks
            AND Id=@original_Id"
        ConflictDetection="CompareAllValues"
        OldValuesParameterFormatString="original_{0}"
        Runat="server" OnUpdated="srcProducts_Updated" />    </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>

Enjoyed this post? Share it!

 

Leave a comment

Your email address will not be published.