C# 在gridview中分页时尝试了解错误源

C# 在gridview中分页时尝试了解错误源,c#,asp.net,gridview,C#,Asp.net,Gridview,好的!所以,从过去的一周开始,我一直在试图找出为什么我会犯这个错误,但没有成功 我在我的网站中间有这个网格视图设置,我只是试图从数据库中画出大量的行(比如结果表中的20行)。当我设置allowpage=“true”并设置PageSize=“10”时,我得到 HTTP错误404.15-未找到请求过滤模块配置为拒绝查询字符串过长的请求。加载网站时单击网格视图的第2或3页时出错 但是当我删除allowpage=“True”和PageSize=“10”时,我会得到大量条目 代码 <%@ Page

好的!所以,从过去的一周开始,我一直在试图找出为什么我会犯这个错误,但没有成功

<>我在我的网站中间有这个网格视图设置,我只是试图从数据库中画出大量的行(比如结果表中的20行)。当我设置allowpage=“true”并设置PageSize=“10”时,我得到 HTTP错误404.15-未找到请求过滤模块配置为拒绝查询字符串过长的请求。加载网站时单击网格视图的第2或3页时出错

但是当我删除allowpage=“True”PageSize=“10”时,我会得到大量条目

代码

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="StaffDetailsForStaffSalaryMonitoringSystemAdd.aspx.cs" Inherits="StaffDetailsForStaffSalaryMonitoringSystemAdd" %>

<!DOCTYPE html>

  <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
     <title></title>
      <style type="text/css">

        *
        {
            margin:0px;
            padding:0px;
        }

        body
        {
            font-family:Segoe UI;
        }


        div#KohinoorBanner
        {
            background-color:#004883;
            display:block;
            height:100px;
            position:relative;
        }
        div#KohinoorBanner img
        {
            position:absolute;
            left:15px;
            bottom:15px;
        }





        /* -------Styling the Horizontal Navigation Menu---------- */
       div#KohinoorNavigationMenu
        {
            /*outline:solid red 1px;*/
            height:30px;
            position:relative;
            top:1px;
            background-color:#980000;
            z-index:1;
        }

        ul#HorizontalNavigationMenu,ul#PayRollSubMenu,ul#MastersSubMenu,ul#EnquirySubMenu,ul#StudentDetailsSubMenu,ul#Account,ul#TellecallingSubMenu,ul#ReportsSubMenu,ul#LiveConversationSubMenu
        {
            list-style-type:none;
        }
        ul#HorizontalNavigationMenu a
        {
            text-decoration:none;
            display:block;
            width:175px;
            height:30px;
            background-color:#980000;
            color:white;
            line-height:30px;
            font-family:Sans-Serif;
            font-size:13px;
            outline:solid white 1px;
        }
        ul#HorizontalNavigationMenu li
        {
            position:relative;
            float:left;
            width:175px;
            display:block;
        }
        ul#HorizontalNavigationMenu ul#PayRollSubMenu
        {
            /*outline:solid blue 2px;*/
            position:relative;
            display:none;
            width:175px;
            top:1px;
        }
        ul#HorizontalNavigationMenu>li:hover ul#PayRollSubMenu
        {
            display:block;
        }

        ul#HorizontalNavigationMenu ul#PayRollSubMenu a
        {
            display:block;
            width:175px;
            background-color:#f89800;
        }
        ul#HorizontalNavigationMenu li:hover>a
        {
            background-color:#3064c8;
        }
        ul#HorizontalNavigationMenu ul#PayRollSubMenu li:hover>a
        {
            background-color:#f83000;
            display:block;
        }


        ul#HorizontalNavigationMenu ul#MastersSubMenu
        {
            /*outline:solid blue 2px;*/
            position:relative;
            display:none;
            width:175px;
            top:1px;
        }
        ul#HorizontalNavigationMenu ul#MastersSubMenu a
        {
            display:block;
            width:175px;
            background-color:#f89800;
        }
        ul#HorizontalNavigationMenu>li:hover ul#MastersSubMenu
        {
            display:block;
        }
        ul#HorizontalNavigationMenu ul#MastersSubMenu li:hover>a
        {
            background-color:#f83000;
            display:block;
        }


        ul#HorizontalNavigationMenu ul#EnquirySubMenu
        {
            /*outline:solid blue 2px;*/
            position:relative;
            display:none;
            width:175px;
            top:1px;
        }
        ul#HorizontalNavigationMenu ul#EnquirySubMenu a
        {
            display:block;
            width:175px;
            background-color:#f89800;
        }
        ul#HorizontalNavigationMenu>li:hover ul#EnquirySubMenu
        {
            display:block;
        }
        ul#HorizontalNavigationMenu ul#EnquirySubMenu li:hover>a
        {
            background-color:#f83000;
            display:block;
        }



        ul#HorizontalNavigationMenu ul#StudentDetailsSubMenu
        {
            /*outline:solid blue 2px;*/
            position:relative;
            display:none;
            width:175px;
            top:1px;
        }
        ul#HorizontalNavigationMenu ul#StudentDetailsSubMenu a
        {
            display:block;
            width:175px;
            background-color:#f89800;
        }
        ul#HorizontalNavigationMenu>li:hover ul#StudentDetailsSubMenu
        {
            display:block;
        }
        ul#HorizontalNavigationMenu ul#StudentDetailsSubMenu li:hover>a
        {
            background-color:#f83000;
            display:block;
        }


        /* -------Styling the Blue Gradient---------- */ 
        div#BlueGradient
        {
            position:absolute;
            display:block;
            height:30px;
            width:100%;
            border:solid blue 1px;
            z-index:-1;
        }





        /*--------Styling the StaffDetails--------*/
        div#StaffDetails
        {
            display:block;
            position:absolute;
            width:100%;
            height:400px;
            top:200px;
            border:solid red 1px;
            background-color:#d0dcc0;
            z-index:0;

        }

        div#StaffDetails div#StaffDetailsBanner
        {
            display:block;
            height:30px;
            line-height:30px;
            color:white;
            background-color:#3098c8;
            text-align:center;
            font-family:Calibri;
            font-weight:bold;
        }

        .GridViewTable
        {
            border-collapse:collapse;
            height:25px;
            width:100%;
            font-family:Segoe UI;
            font-size:11px;
            font-weight:bold;
            position:absolute;
            top:30px;
        }
        .TableHeadingRow
        {
            background-color:#688890;
            color:white;
            height:30px;
            text-align:center;
            font-weight:bold;
            font-size:13px;
            border:solid white 1px;
            font-family:'Segoe UI';
        }
        .TableRow
        {
            height:25px;
            color:#1b469d;
            border:solid white 1px;
            padding-left:5px;
            background-color:#d0dcc0;
            font-family:'Segoe UI';
            font-size:11px;
            text-align:center;
            font-weight:bold;
        }

        .BlueButton
        {
            background:#018788;
            width:75px;
            height:25px;
            color:white;
            border:solid white 2px;
            font-family:Segoe UI;
            font-weight:bold;
        }
        .BlueButton:hover
        {
            cursor:pointer;
        }



    </style>

  </head>
  <body>
<form id="StaffDetailsForm" runat="server" method="get" >
<!-- *************Kohinoor Banner****************** -->
    <div id="KohinoorBanner">
        <asp:Image runat="server" ID="KohinoorLogoImage" ImageUrl="~/Images/Kohinoor.jpg" alt="KohinoorLogo"></asp:Image>
        <div id="GoogleSearchSection"></div>
        <div id="Date"></div>
    </div>



    <!-- *************Kohinoor Horizontal Navigation Menu****************** -->
    <div id="KohinoorNavigationMenu">
        <ul id="HorizontalNavigationMenu">
            <li>
                <a href="#">&nbsp;--Masters--</a>
                 <ul id="MastersSubMenu"></ul>
          </li>
            <li>
                <a href="#">&nbsp;--Enquiry--</a>
                <ul id="EnquirySubMenu">
                    <li><a href="EnquiryRegistrationSystem.aspx" >&nbsp;>Registration</a></li>
                    <li><a href="FollowUpProcessSystem.aspx" >&nbsp;>>Followup</a></li>

                </ul>
            </li>
            <li>
                <a href="#">&nbsp;--Student Details--</a>
                <ul id="StudentDetailsSubMenu">
                    <li><a href="StudentPhotoUploadMonitoringSystem.aspx"  >&nbsp;>> Student Photo</a></li>





                </ul>
            </li>
            <li>
                <a href="#">&nbsp;--PayRoll--</a>
                <ul id="PayRollSubMenu">
                    <li><a href="StaffRegistrationSystem.aspx" >&nbsp;>> Staff Details</a></li>
                    <li><a href="StaffSalaryMonitoringsystem.aspx" >&nbsp;>> Salary Details</a></li>
                    <li><a href="StaffPhotoManagementSystem.aspx">&nbsp;>> Staff Photo</a></li>
                    <li><a href="StaffWorkProfileSystem.aspx" >&nbsp;>> Work Profile</a></li>
                    <li><a href="StaffLeaveMonitoringSystem.aspx">&nbsp;>> Leave Details</a></li>

                </ul>
            </li>
            <li><a href="#">&nbsp;--Reports--</a></li>
            <li><a href="#">&nbsp;--Live Conversation--</a></li>
            <li><a href="#">&nbsp;--Logout--</a></li>
        </ul>
    </div>





    <!-- *************Kohinoor Blue Gradient****************** -->
    <div id="BlueGradient">Blue Gradient</div>



    <!-- *************Staff Details****************** -->
    <asp:HiddenField runat="server" ID="SearchType_HiddenField" Value="" />
    <asp:HiddenField runat="server" ID="NameOrNo_HiddenField" Value="" />
    <asp:HiddenField runat="server" ID="EmployeeCode_HiddenField" Value="" />
    <asp:HiddenField runat="server" ID="FirstName_HiddenField" Value="" />
    <asp:HiddenField runat="server" ID="FirstPage" Value="true" />
    <div id="StaffDetails">
        <div id="StaffDetailsBanner">
            Staff Details
        </div>
        <div id="StaffDetailsContent">
            <asp:SqlDataSource runat="server"
                ID="SqlDataSource_FirstName"
                ConnectionString="Data Source=NIRMIT-PC\SQLEXPRESS;Initial Catalog=KohinoorDatabaseTrial3;Integrated Security=True"
                SelectCommand="SELECT SPD.emp_code, SN.first_name, SN.middle_name, SN.last_name, SPD.blood_group, SPD.religion, SPD.DOB, SPD.contact_no1, SPD.contact_no2, SED.highest_qualification, SOD.designation, SOD.aggrement_type, SOD.doj, SOD.pf_no
                FROM StaffPersonalDetails AS SPD
                LEFT OUTER JOIN StaffName AS SN
                ON SPD.emp_code = SN.emp_code
                LEFT OUTER JOIN StaffOfficialDetails AS SOD
                ON SPD.emp_code = SOD.emp_code
                LEFT OUTER JOIN StaffEducationalDetails AS SED
                ON SPD.emp_code = SED.emp_code
                WHERE SN.first_name LIKE '%' + @FirstName + '%'">
                <SelectParameters>
                    <asp:ControlParameter ControlID="FirstName_HiddenField" Name="FirstName" />
                </SelectParameters>
            </asp:SqlDataSource>
            <asp:SqlDataSource runat="server"
                ID="SqlDataSource_EmployeeCode"
                ConnectionString="Data Source=NIRMIT-PC\SQLEXPRESS;Initial Catalog=KohinoorDatabaseTrial3;Integrated Security=True"
                SelectCommand="SELECT SPD.emp_code, SN.first_name, SN.middle_name, SN.last_name, SPD.blood_group, SPD.religion, SPD.DOB, SPD.contact_no1, SPD.contact_no2, SED.highest_qualification, SOD.designation, SOD.aggrement_type, SOD.doj, SOD.pf_no
                FROM StaffPersonalDetails AS SPD
                LEFT OUTER JOIN StaffName AS SN
                ON SPD.emp_code = SN.emp_code
                LEFT OUTER JOIN StaffOfficialDetails AS SOD
                ON SPD.emp_code = SOD.emp_code
                LEFT OUTER JOIN StaffEducationalDetails AS SED
                ON SPD.emp_code = SED.emp_code
                WHERE SPD.emp_code = @EmployeeCode">
                <SelectParameters>
                    <asp:ControlParameter ControlID="EmployeeCode_HiddenField" Name="EmployeeCode" />
                </SelectParameters>
            </asp:SqlDataSource>
            <asp:GridView runat="server"
                ID="StaffDetailsGridView"
                Width="100%" 
                AllowPaging="true"
                PageSize="10"
                AutoGenerateColumns="False" 
                EmptyDataText="No Result Found"
                EnablePersistedSelection="True" 
                DataKeyNames="emp_code"
                CssClass="GridViewTable">
                <Columns>
                    <asp:BoundField DataField="emp_code" HeaderText="Emp Code"/>
                    <asp:TemplateField HeaderText="Student Name">
                        <ItemTemplate>
                            <asp:HyperLink ID="StaffNameHyperlink" NavigateUrl='<%# "~/StaffInformationBasicSalaryDetailAdd.aspx?EmpCode=" + Eval("emp_code") %>' runat="server"><asp:Label runat="server" ID="FirstNameLabel" Text='<%# Eval("first_name") + " " + Eval("middle_name") + " " + Eval("last_name")%>'></asp:Label></asp:HyperLink>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:BoundField DataField="blood_group" HeaderText="Blood Grp"/>
                    <asp:BoundField DataField="religion" HeaderText="Religion"/>
                    <asp:TemplateField HeaderText="DOB">
                        <ItemTemplate>
                            <asp:Label runat="server" Text='<%# Eval("DOB").ToString().Substring(0,11)%>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:BoundField DataField="contact_no1" HeaderText="Contact No" /> 
                    <asp:BoundField DataField="highest_qualification" HeaderText="Qualification" /> 
                    <asp:BoundField DataField="designation" HeaderText="Designation" /> 
                    <asp:BoundField DataField="aggrement_type" HeaderText="Aggrement Type" /> 
                    <asp:TemplateField HeaderText="Date of Join">
                        <ItemTemplate>
                            <asp:Label runat="server" Text='<%# Eval("doj").ToString()%>'></asp:Label>
                        </ItemTemplate>
                    </asp:TemplateField>
                    <asp:BoundField DataField="pf_no" HeaderText="Pf No" />
                </Columns>
                <HeaderStyle CssClass="TableHeadingRow" />
                <RowStyle CssClass="TableRow" />
            </asp:GridView>
        </div>
    </div>
</form>
很抱歉把它放在这里,因为它不适合评论 这是我在回发时得到的链接(即,单击网格的某个页码后)


//localhost:55415/StaffDetailsForStaffSalaryMonitoringSystemAdd.aspx?uu EVENTTARGET=StaffDetailsGridView&u EVENTARGUMENT=Page%243&u VIEWSTATE=9ZTJ5%2Ftwu4G%2Fe%2Fu1hJUeTt4CsKw0J6Iv%2BR0RUYCADBC72F%2B9BGRDK6T8L%2BEMbHbHbGjKaglawq%2KgGevioqCxPrn4L8ZL8ZL8ZL8ZL8ZL8ZL8ZL8KW8ZW8K8K8ZW8KK8ZZW7ZZZW8KKKK8ZZZZZZZZZZZZZZ2E%2E%2E%2F8K8KKK8K。。。。.

您是否尝试在web配置中添加此行

     <system.web>
      <httpRuntime maxQueryStringLength="32768" maxUrlLength="65536"/>

     </system.web>

   <system.webServer>
   <security>
       <requestFiltering>
       <requestLimits maxQueryString="2097151"/>
    </requestFiltering>
  </security>
 </system.webServer>

在分页时,您的查询字符串似乎太长,因为您有很长的类名,如“StaffDetailsForStaffSalaryMonitoringSystemAdd”。在分页时,您的url将变成这样

  <a    href="javascript:__doPostBack('ctl00$ContentPlaceholder$StaffDetailsForStaffSalaryMonitoringSystemAdd$StaffDetailsGridView','Page$2')">2</a>


因此出现了错误。根据您的喜好增加webconfig中设置的值。

我按照您所说的那样尝试(配置了我的web配置文件),但仍然收到了相同的错误。接下来,我甚至将我的类名称从“StaffDetailsForStaffSalaryMonitoringSystemAdd”减少到“StaffDetailsSmsadd”但它仍然给了我同样的错误。此外,我甚至将maxQueryStringLength和maxUrlLength的值设置为“2097151”这是他们可以接受的最大值,但我仍然得到了相同的错误。我可以做些什么来实现这一点?我已经更新了我的答案。尝试在您的web配置中使用这两种设置的组合。哇!!!成功了。谢谢:)如果可能的话,你能解释一下你是如何找到解决方案的,因为这不是很直观。通过这个链接。你能粘贴你在回帖上得到的链接吗?我还是觉得出于某种原因,生成的查询字符串太长了。
  <a    href="javascript:__doPostBack('ctl00$ContentPlaceholder$StaffDetailsForStaffSalaryMonitoringSystemAdd$StaffDetailsGridView','Page$2')">2</a>