留言簿
2011/10/10 17:40:09 FMJ
aspnetpager 结合repeater 实现对动态查询的结果进行分页 ,是借助PagedDataSource实现的分页.效率是不是不高啊,有没有对动态查询的结果进行高效分页的示例呢?
回复:您好,分页控件和这个没有任何直接关系,您用什么办法都可以,一般用存储过程只获取当前页数据这种办法效率最好,示例项目中各种方法都有,您可以下载参考一下。谢谢!
2011/10/9 16:01:41 Sam
老杨你好,近两年我的项目中一直在使用你的翻页控件,最近发现一个不太完美的地方,现向你告之。因为我是做互联网产品的,一直在关注搜索引擎友好及优化的事。
拿你demo中url重写的页面说明问题所在:
http://www.webdiyer.com/AspNetPagerDemo/urlrewriting/
http://www.webdiyer.com/AspNetPagerDemo/urlrewriting/default.aspx
http://www.webdiyer.com/AspNetPagerDemo/urlrewriting/listpage_1.aspx
这三个页面,页面内容其实是一样的,这在搜索引擎友好上面,不是太好的事,请教解决方案。我的邮箱:sam@6617.com
回复:您好,最后一个页索引是1的url的问题,我准备在下个版本中去掉这个页索引参数,因为不带页索引参数的话默认就是第1页,至于前两个url,您可以通过url重写将其合并为一个,微软发布过一个IIS搜索引擎优化工具,您可以用这个工具优化一下。谢谢!
2011/10/8 13:56:22 xye
杨老师,我又来了。我使用的MvcPager,目前global中的配置 routes.MapRoute( "Default", "{controller}/{action}/{id}");
routes.MapRoute("Page","{id}");。我想要生成其他形式的url。具体要如何指定路由呢
而且我仅仅是想在生成分页url时才用Page。不知道如果指定
回复:您好,关于怎么创建和使用的问题,这是使用ASP.NET MVC要掌握的最基本知识,这些不是几句可以说清楚的,您需要找些资料好好学习一下。至于使用MvcPager,只要您的页面能运行,任何路由都可以,如果路由中没有pageIndex这个参数,那么这个页索引参数值就会被当做普通的url参数添加在url之后,类似于index?pageindex=2这样,如果您的路由中指定的pageIndex参数,那么分页url就根据您的路由规则创建。谢谢!
2011/10/8 10:06:19 kuku
杨老师,您好,为何分页控件在遨游浏览器无法点击?其他浏览器都可以
回复:您好,听说最新的遨游3有这样的问题,不知道是遨游的问题,还是.net框架生成的回发代码不规范的问题,如果是前者,那么所有asp.net站点中用到的回发都将无法运行,AspNetPager自然不能例外,这种情况下建议您用url分页方式。另外我会抽时间了解一下您说的问题,如果是AspNetPager的问题,我会修正后发布新版本。谢谢支持!
2011/10/7 19:07:56 sim
MvcPager分页控件能否支持MVC3
回复:您好,支持,最新的示例项目就是ASP.NET MVC 3。
2011/10/5 22:10:54 sshenry
SqlDataSource SqlDataSource1 = new SqlDataSource();
SqlDataSource1.ConnectionString = ConfigurationSettings.AppSettings["connStr"];
SqlDataSource1.SelectCommandType = SqlDataSourceCommandType.StoredProcedure;
SqlDataSource1.SelectCommand = "CustResource";
SqlDataSource1.SelectParameters.Clear();
SqlDataSource1.SelectParameters.Add("@strName", System.TypeCode.String, sWhere.Trim());
DataView dv = (DataView)SqlDataSource1.Select(DataSourceSelectArguments.Empty);
AspNetPager2.RecordCount = dv.Count;
string sort = (string)ViewState["SortOrder"] + " " + (string)ViewState["OrderDire"];
dv.Sort = sort;
PagedDataSource pds = new PagedDataSource();
pds.DataSource = dv;
pds.AllowPaging = true;
pds.CurrentPageIndex = AspNetPager2.CurrentPageIndex - 1;
pds.PageSize = AspNetPager2.PageSize;
GridView1.DataSource = pds;
GridView1.DataBind();
加参数@strName就报错“未将对象引用设置到对象的实例”,不加参数就可以执行,是怎么回事啊,调试了一天都没有结果.
参数存储过程为:
CREATE PROCEDURE zqzy_CustResource
@strName varchar(500)
AS
select id, CustResource.CustName CustName,CustLevel,sum(VPDN) VPDN,sum(MSAP) MSAP,sum(VPN) VPN,sum(数字电路) 数字电路,sum(光纤宽带) 光纤宽带,
from CustResource,tttt
where tttt.CustName like '%'+CustResource.CustName+'%' +@strName
group by CustResource.CustName,CustLevel
order by CustResource.CustName
SET NOCOUNT OFF
GO
SqlDataSource1.Select(DataSourceSelectArguments.Empty);
dv 为什么是null值!
回复:您好,您的@strname是什么?是where条件吗?where条件是不能这样传递的,如果需要动态传递where条件,那就需要用exec方法来执行动态sql语句,很多存储过程新手都犯过这样的错误。谢谢!
2011/10/5 20:07:05 chuxue
杨老师,希望您在存储过程生成器中增加mysql的存储过程。
回复:您好,我从没用过mysql,对这个不太熟悉,您可以在网上搜下,类似的存储过程应该有很多,您可以根据自己的需求或理解再改进和完善一下。谢谢!
2011/10/5 1:21:45 Dev
AspNetPager点下一页后,会刷新页面的其他控件(比如textbox,dropdownlist),导致这些控件刷新后,不能保留刷新前的值(比如textbox的text就被清成空了),怎么解决这个问题呢?多谢~
回复:您好,这是因为您用了Url分页方式的缘故吧,您需要了解一下url分页和普通的postback分页的区别。谢谢!
2011/10/4 19:49:05 liyin
老师:您能详细说一下,aspnetpage控件怎么用mysql存储过程?也就是控件和数据之间怎么连接?
回复:您好,分页控件和数据没有直接关系,所以没有什么连接的说法,分页控件要正常工作,只需设置RecordCount属性并编写PageChanged事件处理程序即可。请参考一下示例和帮助文档。谢谢!
2011/9/30 21:45:01 峰少
AspNetPager,一直都在使用,很好用,但是不支持WebKit内核是不行了,现在双核浏览器已经逐渐普及了,在这个模式下,无法使用,我使用的遨游浏览器,谢谢!
回复:您好,谢谢提醒,我会调试完善后发布下个版本,但如果标准的ASP.NET回发都无法运行的话,那就没有办法了,因为生成回发方法用的就是.net框架中的方法。谢谢!
