Проблема с контролем проверки в форме просмотра ASP.NET C # - PullRequest
2 голосов
/ 02 мая 2011

У меня возникли проблемы с контролем валидации в форме просмотра. Я мог добавить элемент управления проверкой внутри элемента управления формы, он работал нормально, пока я не попытался сгруппировать их, используя группы проверки. Также, если я не введу значение, программа все равно разрешит добавить его в базу данных. Может ли кто-нибудь помочь мне указать на проблему или ошибку в моей программе? Вот заявление о вставке, которое я сделал.

<InsertItemTemplate>

                Book ID:
                <asp:TextBox ID="bookidTextBox" runat="server" Text='<%# Bind("bookid") %>' />
                <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]{13,13})$" ErrorMessage="Value must be at least 13 characters long">
                </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" 
                    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}") %>'>
                </asp:DropDownList>

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

                Date added:
                <asp:TextBox ID="dateaddedTextBox" runat="server" 
                    Text='<%# Bind("dateadded") %>' />
                <asp:RequiredFieldValidator ID="RequiredFieldValidator6" runat="server" ErrorMessage="* Required" ControlToValidate="dateaddedTextBox" ValidationGroup="InsertBook">
                </asp:RequiredFieldValidator>
                <br />

                Status:
                <asp:DropDownList ID="DropDownList2" runat="server" 
                    DataSourceID="statusDataSource" DataTextField="statusname" 
                    DataValueField="statusid" SelectedValue='<%# Bind("statusid", "{0}") %>'>
                </asp:DropDownList>

                <asp:SqlDataSource ID="statusDataSource" runat="server" 
                    ConnectionString="<%$ ConnectionStrings:LibrarySystemConnectionString %>" 
                    SelectCommand="SELECT [statusid], [statusname] FROM [BookStatus]">
                </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>
                <br />

                <asp:LinkButton ID="InsertButton" runat="server" CausesValidation="True" CommandName="Insert" Text="Add" />
                    &nbsp;

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

            </InsertItemTemplate>

Любая помощь будет высоко ценится;)

Заранее спасибо.

1 Ответ

1 голос
/ 02 мая 2011

Вы должны установить ValidationGroup="InsertBook", так как вы установили группу валидации для вашей проверки.

...