Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如果ASP.NET中存在记录,请尝试捕获_C#_Asp.net - Fatal编程技术网

C# 如果ASP.NET中存在记录,请尝试捕获

C# 如果ASP.NET中存在记录,请尝试捕获,c#,asp.net,C#,Asp.net,我试图创建一个try/catch方法来查看一条记录是否存在,如果它确实存在,则生成一个错误消息框,如果它不存在,则将执行插入 以下是我在insertMode下的代码示例: ISBN: <asp:TextBox ID="bookidTextBox" runat="server" Text='<%# Bind("bookid") %>' ToolTip="For the book ISBN please refer to the ISBN barco

我试图创建一个try/catch方法来查看一条记录是否存在,如果它确实存在,则生成一个错误消息框,如果它不存在,则将执行插入

以下是我在insertMode下的代码示例:

        ISBN:
        <asp:TextBox ID="bookidTextBox" runat="server" Text='<%# Bind("bookid") %>' ToolTip="For the book ISBN please refer to the ISBN barcode usually located at the back of the book. A barcode reader is required." />

        <asp:RequiredFieldValidator ID="RequesFieldValidator1" runat="server" ErrorMessage="* Required" ControlToValidate="bookidTextBox" ValidationGroup="InsertBook">
        </asp:RequiredFieldValidator>
        <asp:RegularExpressionValidator ID="RegularExpressionValidator" runat="server" Display="Dynamic" ControlToValidate="bookidTextBox" ValidationExpression="^([\S\s]{10,13})$" ErrorMessage="Invalid ID/ISBN. Please try again" ValidationGroup="InsertBook">
        </asp:RegularExpressionValidator>
        <br />

        Title:
        <asp:TextBox ID="booktitleTextBox" runat="server" Text='<%# Bind("booktitle") %>' />
        <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="* Required" ControlToValidate="booktitleTextBox" ValidationGroup="InsertBook">
        </asp:RequiredFieldValidator>
        <br />

        Author's lastname:
        <asp:TextBox ID="lastnameTextBox" runat="server" Text='<%# Bind("lastname") %>' />
        <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" ErrorMessage="* Required" ControlToValidate="lastnameTextBox" ValidationGroup="InsertBook">
        </asp:RequiredFieldValidator>
        <br />

        Author's firstname:
        <asp:TextBox ID="firstnameTextBox" runat="server" Text='<%# Bind("firstname") %>' />
        <asp:RequiredFieldValidator ID="RequiredFieldValidator4" runat="server" ErrorMessage="* Required" ControlToValidate="firstnameTextBox" ValidationGroup="InsertBook">
        </asp:RequiredFieldValidator>
        <br />

        Description:
        <asp:TextBox ID="descriptionTextBox" runat="server" Height="150px" Width="300px" Text='<%# Bind("description") %>' />
        <asp:RequiredFieldValidator ID="RequiredFieldValidator5" runat="server" ErrorMessage="* Required" ControlToValidate="descriptionTextBox" ValidationGroup="InsertBook">
        </asp:RequiredFieldValidator>
        <br />

        Category:
        <asp:DropDownList ID="DropDownList1" runat="server" 
            DataSourceID="categoryDataSource" DataTextField="name" 
            DataValueField="categoryid" SelectedValue='<%# Bind("categoryid", "{0}") %>' ToolTip="to add a new category please click the 'Manage Categories' menu">
        </asp:DropDownList>

        <asp:SqlDataSource ID="categoryDataSource" runat="server" 
            ConnectionString="<%$ ConnectionStrings:LibrarySystemConnectionString %>" 
            SelectCommand="SELECT [categoryid], [name] FROM [TblCategory]">
        </asp:SqlDataSource>
        <br />

        Quantity:
        <asp:TextBox ID="quantityTextBox" runat="server" Text='<%# Bind("quantity") %>' />
        <asp:RequiredFieldValidator ID="RequiredFieldValidator7" runat="server" ErrorMessage="* Required" ControlToValidate="quantityTextBox" ValidationGroup="InsertBook">
        </asp:RequiredFieldValidator>
        <asp:RangeValidator ID="RangeValidator" runat="server" ErrorMessage="Invalid inputs. Accept numbers only" ControlToValidate="quantityTextBox" MinimumValue="1" MaximumValue="50" ValidationGroup="InsertBook">
        </asp:RangeValidator>
        <br />

        <asp:Button ID="InsertButton" runat="server" CausesValidation="True" CommandName="Insert" Text="Add" ValidationGroup="InsertBook" PostBackUrl="~/Admin/ManageBooks.aspx"/>

        <asp:Button ID="InsertCancelButton" runat="server" 
            CausesValidation="False" CommandName="Cancel" Text="Cancel" />

ISBN:

标题:
作者姓名:
作者姓名:
说明:
类别:
数量:

非常感谢您的帮助!提前感谢。

在要保持唯一的字段上放置唯一索引

继续插入。如果已经有记录,将引发一个异常,您可以捕获并处理该异常


这比插入前检查更快、更简单、更可靠。

@John:是的,我做了。我改正了我的错误。谢谢你指出这一点。