我在web用户控件使用了基类,出现错误。.cs里的
public partial class wucHead :PageBase.aspx里的
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="wucHead.ascx.cs" Inherits="wucHead" %>错误:编译器错误消息: ASPNET: 请确保此代码文件中定义的类与“inherits”属性匹配,并且该类扩展的基类(例如 Page 或 UserControl)是正确的。行 12: public partial class wucHead :PageBase

解决方案 »

  1.   

    用户控件是拿到其它页面上使用的,比如A页面上引用了该用户控件,你在A页面 :PageBase就可以了
      

  2.   

    可是基类pagebase中定义的变量使用不了。
        protected static OleDbConnection conn;
        protected static OleDbCommand cmd;
        protected static OleDbDataReader dr;
        protected static OleDbDataAdapter adapter;
        public string strSQL;会提示变量不存在
      

  3.   

    定义的函数也不存在
        /// <summary>
        /// 将 cmdText 发送到 System.Data.SqlClient.OleDbCommand.Connection,并使用 System.Data.CommandBehavior 值之一生成一个 DataReader
        /// </summary>
        /// <param name="cmdTxt">安全的sql语句(string.format)</param>
        /// <returns>一个 DataReader 对象</returns>
        public static OleDbDataReader GetDataReader(string cmdTxt)
        {
            return GetDataReader(cmdTxt, null);
        }    /// <summary>
        /// 将 cmdText 发送到 System.Data.SqlClient.OleDbCommand.Connection,并使用 System.Data.CommandBehavior 值之一生成一个 DataReader
        /// </summary>
        /// <param name="cmdTxt">安全的sql语句(string.format)</param>
        /// <param name="pars">参数</param>
        /// <returns>一个 DataReader 对象</returns>
        public static OleDbDataReader GetDataReader(string cmdTxt, params OleDbParameter[] pars)
        {
            using (cmd = new OleDbCommand(cmdTxt, connectionstrings))
            {
                if (pars != null)
                    cmd.Parameters.AddRange(pars);
                dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
                return dr;
            }
        }
      

  4.   

    基类定义是这样的
    public class PageBase : System.Web.UI.Page
    使用在所有aspx页面的cs里用户控件定义是
    public partial class wucHead : System.Web.UI.UserControl搜了一下,似乎用户控件要特别定义一个用户控件基类
      

  5.   

    用户控件,一般会 有个基类 UserControl,好像无法自己定义 自己的基类。除非搞清楚 UserControl是怎么定义的,能不能重写 里面的方法。