c# - 使用AspNetPager进行分页的时候遇到引用不到对象。

查看:108
本文介绍了c# - 使用AspNetPager进行分页的时候遇到引用不到对象。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

1、使用VS2015开发时要添加分页功能,初学.net,于是从网上找了分页插件:AspNetPager分页控件,工程中已经使用VS集成的数据库连接字符串连接上了oracle数据库

<add name="ConnectionString" connectionString="Provider=MSDAORA.1;Data Source=orcl;Persist Security Info=True;Password=admin;User ID=SCOTT" providerName="System.Data.OleDb"/>

从数据库查出的测试数据也已经能看到:


...]
2、怎么才能将分页控件跟上面的table绑定起来呢?我按照网上给的方法试了试,发现VS会出现引用不到类的问题:
参考的控件使用方法如下:
http://www.ppcn.net/66721.html

3、按照上面的操作之后VS中缺少AskManager类对象:

应该怎么使用这个插件呢?是不是缺少dll?

解决方案

新手是吧,没人回复是不是觉得很失望?
其实很简单,你这问题让别人一看就知道你这属于啥都不懂,没有任务基础的。不是别人不热心,而是不知道从何说起,很有可能给你说了半天你也未必听得懂,而且越说越复杂,你越听越晕。这就好比你不愿意为幼儿园的小朋友讲解三角函数一样。
所以到今天已经5天了,没有一个人回答你的问题。

好,回到问题本身,听不听得懂就看你的造化了。
缺少的那个AskManager类对象是因为他那个示例中有部分代码没有贴出来,也就是说源码并不是不完整的。文章是讲分页控件使用,所以和分页无关的那部分他自己的业务逻辑代码就没贴出来。
因为稍为懂点的人都能明白那是干什么的,只是他没想到的是碰上你这么一个小白。
当前这个AspNetPager控件需要两个数据源,一个是当前要显示的数据列表,另一个是全部数据的总数。
bind方法中只从数据库取出了当前要显示的数据列表(缓存在ds中,然后赋值给RepeaterAskAnswer.DataSource),但并没有直接提供另一个,而是通过另一个叫AskManager类的静态方法来提供的。
好像越解释越乱了,我还是直接上代码吧。

public class AskManager {
    public static System.Data.DataTable GetAllAsks() {
        System.Data.SqlClient.SqlConnection connection = new System.Data.SqlClient.SqlConnection(ConfigurationManager.ConnectionStrings["tianzi"].ConnectionString);
        System.Data.SqlClient.SqlCommand cmd = new SqlCommand("select * from ask", connection);
        SqlDataAdapter sda = new SqlDataAdapter(cmd);
        System.Data.DataSet ds = new System.Data.DataSet();
        sda.Fill(ds,"asks");
        return ds.Tables["asks"];
    }
}

到这里,分页控件应该可以正常使用了,但是...
别高兴太早,他这个分页有问题。
AskManagero类的GetAllAsks方法返回的是一个表格(DataTable),通过获取整个表格的行数来取得全部数据的总数,那分页还有什么意义?有什么问题,你自己想一下咯。
看AspNetPager的用法,首先应该考虑去官网(http://www.webdiyer.com/),而不是随便在网上找一篇文章。
注意学习方法,任何问题首先应该自己思考+参考官方文档,然后才是搜索引擎,然后才是向别人请教或在网上提问。

哎,不知道写了这么多你能认真看几个字,不是我想在这装13教训你,我也没有这个意思,只是有点悲哀.net圈尽是这种白痴问题。

这篇关于c# - 使用AspNetPager进行分页的时候遇到引用不到对象。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆