使用aspnetpager出现错误,哪位告诉下啊!
我的关于aspnetpager的操作是写在数据库操作类里面的,可是却出现这样的问题:类型“System.Web.UI.INamingContainer”在未被引用的程序集中定义。必须添加对程序集“System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”的引用。 D:\Projects\ThreeLayerTest\DBUtility\DbHelperSQL.cs 948 25 DBUtility

解决方案 »

  1.   

    System.Web.UI.INamingContainer 没有引用程序集 找到对应的DLL文件 引用下
      

  2.   

    是引用aspnetpager这个控件吗?我已经引用过了啊.
      

  3.   

    在webconfig中引用一下试试
    System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a
      

  4.   

    我的项目是用三层做的.现在写的是DBUtility,也就是数据库操作类.
    如果,我把哪个控件从引用中删除,会出现
    错误 1 找不到类型或命名空间名称“Wuqi”(是否缺少 using 指令或程序集引用?) D:\Projects\ThreeLayerTest\DBUtility\DbHelperSQL.cs 8 7 DBUtility
    错误 2 找不到类型或命名空间名称“AspNetPager”(是否缺少 using 指令或程序集引用?) D:\Projects\ThreeLayerTest\DBUtility\DbHelperSQL.cs 948 38 DBUtility
    如果我把这段函数去了,就没有错误!
      

  5.   

    怎么能把aspnetpager的操作写在数据库操作类里面呢?这应该放在表现层中,你的问题不是aspnetpager的问题,而是因为aspnetpager引用了System.Web.dll这个程序集,但你的数据库操作类没有引用这个程序集,解决的办法就是在数据库操作类中引入System.Web.dll就可以了。
      

  6.   

    嗯.是的.引用了System.Web.dll问题解决了.应该可以的吧.我是这样写,高手帮我看下.
      public static DataSet PagerControl(AspNetPager Page, string SQLString, string TableName)
            {
                using (SqlConnection connection = new SqlConnection(connectionString))
                {
                    using (SqlDataAdapter da = new SqlDataAdapter())
                    {
                        DataSet ds = new DataSet();
                        try
                        {
                            connection.Open();
                            da.SelectCommand.CommandType = CommandType.StoredProcedure;
                            da.SelectCommand.CommandText = SQLString;
                            da.Fill(ds, Page.PageSize * (Page.CurrentPageIndex - 1), Page.PageSize, TableName);
                            return ds;
                        }
                        catch (Exception e)
                        {
                            throw new Exception(e.Message, e);
                        }
                        finally
                        {
                            connection.Close();
                        }
                    }
                }
            }
      

  7.   

    呵呵.原来是AspNetpager的作者,幸会,幸会!
    这个控件真不错!帮助我们解决了不少的麻烦!
    不知道,我那个函数在数据库操作类里面写对不对啊!
      

  8.   

    你的代码存在严重问题,你要不过是分页记录的起始索引和每页显示的记录数,没必要把整个AspNetPager控件都当成参数给传递进去,改一下你的方法吧:
    public static DataSet PagerControl(int startIndex,int pageSize, string SQLString, string TableName)
    ...
    da.Fill(ds, startIndex,pageSize, TableName); 
      

  9.   

    三层结构里,DBUtility不应该包含任何对表现层控件的引用,这样不符合三层结构的设计原则,应该把表现层跟这个分开。