关于AspNetPage的问题
因需求需要在点击页码的时候清空地址栏已有的参数。
如:http://localhost:53385/OrderManage/OrderIndex.aspx?id=2
点击页码2正常出现的情况是
http://localhost:53385/OrderManage/OrderIndex.aspx?id=2&page=2
但是我想要的想过是
http://localhost:53385/OrderManage/OrderIndex.aspx?page=2
不知道怎么实现……请各位大大帮忙~~
------解决方案--------------------URL参数重构,我给出代码,你看得懂就给分,看不懂就自己回去找书来多看书:
/// <summary>
/// 构造指向规格值的URL链接
/// 返回URL链接
/// </summary>
/// <param name="normID">要指向的规格ID</param>
/// <param name="normValueID">要指向的规格值ID</param>
/// <returns>URL链接</returns>
protected string ReturnUrlOfNorm(object normID, object normValueID)
{
StringBuilder sbNewQueryString = new StringBuilder();
sbNewQueryString.AppendFormat("?{0}={1}", normID, normValueID); // 指向当前规格
NameValueCollection nvcQuery = Request.QueryString; / /获得URL查询字符串值键对集合
int queryNumber = nvcQuery.Count;
string paramName;
string paramValue = normID.ToString();
for (int i = 0; i < queryNumber; i++)
{
if (nvcQuery.AllKeys[i] != null)
{
/* 参数名不为null时,取出参数名,并判断是否为paramValue(当前规格的参数名) */
if ((paramName = nvcQuery.AllKeys[i].ToString()) != paramValue) sbNewQueryString.AppendFormat("&{0}={1}", paramName, nvcQuery[i]); // 取出当前参数名和值,并与之前的其它查询参数值键对串接起来
}
}
// 重新构造URL并返回给调用者
return string.Format("{0}{1}", Request.Url.AbsolutePath, sbNewQueryString.ToS