¡El artículo de asp.net tiene demasiado texto y necesita paginación!
Primero recupere el artículo que se va a escribir (artículo muy largo) de la base de datos
cadena privada OutputArticle()
{//Solo genera un registro con "AriticID" como 2
cadena m_strRet = "";
. . . .
// Código para recuperar artículos en la base de datos.
return m_strRet
}
Paginación del artículo: cadena pública OutputBySize(string p_strContent)
{
int m_intPageSize=1000; //Tamaño del artículo por página
int m_intCurrentPage = 1; //Establece la primera página como página inicial
int m_intTotalPage = 0;
int m_intArticlelength = p_strContent.Length; //Longitud del artículo
if (m_intPageSize lt; m_intArticlelength)
{//Si el tamaño de cada página es mayor que la longitud del artículo , sin paginación
if (m_intArticlelength m_intPageSize == 0)
{//Establece el número total de páginas
m_intTotalPage = m_intArticlelength / m_intPageSize
}
else
{//si el tamaño total
m_ intTotalPage = m_intArticlelength / m_intPageSize 1
}
if (Request.QueryString["pages"] ! = null)
{//Establecer el número de página actual
intentar
{//Manejar la barra de direcciones de excepción Valor
m_intCurrentPage = Convert.ToInt32(Request.
if (m_intCurrentPage gt; m_intTotalPage)
m_intCurrentPage = m_intTotalPage;
}
catch
{
m_ intCurrentPage = m_intCurrentPage
}
}
//Establece la configuración del contenido de la página para obtener el tamaño de la página actual
m_intPageSize = m_intCurrentPage lt m_ intTotalPage ?m_intPageSize: (m_intArticlelength - m_intPageSize * (m_intCurrentPage - 1));
cadena m_strRet = p_strContent.Substring(m_intPageSize * (m_intCurrentPage - 1), m_intPageSize);
cadena m_strPageInfo = "lt;pgt;lt ;/pgt;";
for (int i = 1; i lt; = m_intTotalPage; i )
{
if (i ==
m_intCurrentPage)
m_strPageInfo = "lt; bgt;" i "lt; /bgt; |"
else
m_strPageInfo = "lt; a href= viewArticle.aspx?pages=" i "gt;" i "lt;/agt |";
}
//Salida para mostrar un número de página única
this.labPageNumber.Text = m_strPageInfo
}
return m_strRet
}
Finalmente, llame al método anterior en el evento de carga de la página:
protected void Page_Load(object sender, EventArgs e)
{
if (!Page . IsPostBack)
{
cadena m_strContent = OutputArticle();
this.labContent.Text = OutputBySize(m_strContent);
}El código de la página es el siguiente:
lt;@ Page Language="C#" AutoEventWireup="true" CodeFile="ViewArticle.aspx.cs" Inherits="ViewArticle" gt; p>
..lt;!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional. dtd"gt; p>
lt; html xmlns="http://www.w3.org/1999/xhtml" gt;
lt; head runat="servidor"gt;
lt;titlegt;Página sin títulolt;/titlegt;
lt;/headgt;
lt;bodygt;
lt;form id="form1" runat ="servidor"gt;
lt;divgt;
lt;asp:Label ID="labContent" runat="servidor"gt;lt;/ asp:Labelgt;
p>lt;br /gt;
lt;br /gt;
lt;asp: Etiqueta ID="labPageNumber" runat ="servidor"gt;lt; /asp: Labelgt;
lt; asp: Etiqueta ID="labPageNumber" runat="servidor"gt; /p>
lt; /formgt;
lt;/bodygt;
lt;/htmlgt;