简体   繁体   English

设置默认的.aspx页面访问权限?

[英]Setting default .aspx page access?

Sorry for some ambiguous title. 抱歉,标题有些含糊。 I'll try best to explain in detail. 我将尽力详细解释。

So I'm making page in board to move through from the first page to the next, by using <a href> tag in front side, List.aspx 因此,通过使用正面List.aspx <a href>标记,我可以将页面从第一页移至第二页

the part of code looks like below. 代码部分如下所示。

<% 
    for (int x = 1; x < page_count + 1; x++)
    {  
%>
        <a name="page_index" href="List.aspx?page=<%=x %>"><%=x %></a>

<% } %>

So by using GET method, I move the page info to back side, List.aspx.cs and here, works with query sentence, calling 10 records from my MSSQL DB 因此,通过使用GET方法,我将页面信息移到了背面List.aspx.cs并在此处与查询语句一起使用,从我的MSSQL DB调用了10条记录

page_number = Request.QueryString["page"];

        int_page_number = Convert.ToInt32(page_number);
        string sql = ""; //sql query

        CDatabase _db = new CDatabase();
        sql = "SELECT * FROM (SELECT ROW_NUMBER() OVER (ORDER BY ArticleIdx) AS orderednumber,";
        string tail = "ArticleIdx, writerName, passwords, title, content, writeDate From dbo.article) AS ordering WHERE orderednumber BETWEEN " +(10*(int_page_number-1)+1).ToString() + " AND " + (10*int_page_number).ToString();
        sql = sql + tail;

However, the problem is since I set up as default page List.aspx if I just enter through my local server, in List.aspx page there appears nothing in my board. 但是,问题在于,如果我只是通过本地服务器进入,则将其设置为默认页面List.aspx ,因此在List.aspx页面中,板上没有任何内容。 If I click number 1 href tag below, then it moves to List.aspx?page=1 and show 10 contents. 如果单击下面的数字1 href tag ,那么它将移至List.aspx?page=1并显示10个内容。

How can I connect default List.aspx page to page=1? 如何将默认List.aspx页连接到page = 1?

Just check if the querystring exists first, if it doesn't, set page number to 1 before the rest of your code runs 只需检查querystring是否首先存在,如果不存在,则在其余代码运行之前将页码设置为1

If (Request.QueryString["page"] == "") {
    page_number = 1;
}
else {
    page_number = Request.QueryString["page"];
}

edit: could even do this if you wish 编辑:如果您愿意,甚至可以这样做

page_number = Request.QueryString["page"];
if (page_number == "") page_number = 1

Going above and beyond 超越

//Set a default
int int_page_number = 1;

//Check there is a value in the query string for page
if(!String.IsNullOrEmpty(Request.QueryString["page"]))
{
     //Try to parse the query string value to an integer
     if(! int.TryParse(Request.QueryString["page"] , out int_page_number))
     {
         //Revert back to 1 if it fails
         int_page_number = 1;
     }
}

This also ensures page number is numeric. 这也可以确保页码是数字。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM