调试别人的一个东西,出现当前上下文不存在DAL。是否缺少using指令集引用。我想肯定是其他aspx.cs文件没有引入DAL类。于是忽然想到应该用using去引入,可是又不知道怎么引入???高手莫笑

解决方案 »

  1.   

    using + 别人类的命名空间;   就行了
      

  2.   

    App_Code文件夹下类的调用问题
      

  3.   

    App_Code是什么文件?这些文件夹不是自己随意起名的吗?难道它是什么系统文件夹,有一套自己的规则?高手别笑,我真的很菜鸟???
      

  4.   

    他这个类没有命名空间啊。。高手指教!!!!
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Data.SqlClient;
    using System.Data;/// <summary>
    ///DAL 的摘要说明
    /// </summary>
    public class DAL
    {
        public DAL()
        {
            //
            //TODO: 在此处添加构造函数逻辑
            //    }
        private static string connStr = "Server=172.19.59.11\\SQLEXPRESS;DataBase=orderList;Uid=sa;Pwd=123456";
        //private static string connStr = "Data Source=.;Initial Catalog=Goods;Integrated Security=True";
        private static SqlConnection conn = null;    public static SqlConnection Conn
        {
            get
            {
                if (conn ==null || conn.State == ConnectionState.Closed)
                {
                    conn = new SqlConnection(connStr);
                }
                return DAL.conn;
            }    }
        public static int ExecuteNonQuery(string sql)
        {
            //插入、更新、删除之后
            SqlConnection myConn = Conn;
            SqlCommand cmd = new SqlCommand(sql, myConn);
            if (myConn.State == ConnectionState.Closed)
            {
                myConn.Open();
            }
            int res = cmd.ExecuteNonQuery();
            myConn.Close();
            return res;
        }
        public static DataTable SqlDataAdapterDt(string sql)
        {
            //查询一个表之后
            SqlConnection myConn = Conn;
            SqlCommand cmd = new SqlCommand(sql, myConn);
            SqlDataAdapter adapter = new SqlDataAdapter(cmd);
            DataTable dt = new DataTable();
            adapter.Fill(dt);
            return dt;
        }
        public static int ExecuteScalar(string sql)
        {
            //查总数之用
            SqlConnection myConn = Conn;
            SqlCommand cmd = new SqlCommand(sql, myConn);
            if (myConn == null || myConn.State == ConnectionState.Closed)
            {
                myConn.Open();
            }
            
            int res = Convert.ToInt32(cmd.ExecuteScalar());
            myConn.Close();
            return res;
        }
    }
      

  5.   

    静态的你直接调用就行了,如在cs页面DAL.ExecuteNonQuery(sql);
      

  6.   

    貌似静态的也要引用其命名空间吧,不然找不到DAL吧
      

  7.   

    貌似静态的也要引用其命名空间吧,不然找不到DAL吧额,刚测试是可以这样。貌似假如它又命名空间就必须要引用,没有就不需要引用。这是什么情况,麻烦帮忙解释下。谢谢了
      

  8.   

    他这个类没有命名空间啊。。高手指教!!!!
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Data.SqlClient;
    using System.Data;/// <summary>
    ///DAL 的摘要说明
    /// </summary>
    public class DAL
    {
        public DAL()
        {
            //
            //TODO: 在此处添加构造函数逻辑
            //    }
        private static string connStr = "Server=172.19.59.11\\SQLEXPRESS;DataBase=orderList;Uid=sa;Pwd=123456";
        //private static string connStr = "Data Source=.;Initial Catalog=Goods;Integrated Security=True";
        private static SqlConnection conn = null;    public static SqlConnection Conn
        {
            get
            {
                if (conn ==null || conn.State == ConnectionState.Closed)
                {
                    conn = new SqlConnection(connStr);
                }
                return DAL.conn;
            }    }
        public static int ExecuteNonQuery(string sql)
        {
            //插入、更新、删除之后
            SqlConnection myConn = Conn;
            SqlCommand cmd = new SqlCommand(sql, myConn);
            if (myConn.State == ConnectionState.Closed)
            {
                myConn.Open();
            }
            int res = cmd.ExecuteNonQuery();
            myConn.Close();
            return res;
        }
        public static DataTable SqlDataAdapterDt(string sql)
        {
            //查询一个表之后
            SqlConnection myConn = Conn;
            SqlCommand cmd = new SqlCommand(sql, myConn);
            SqlDataAdapter adapter = new SqlDataAdapter(cmd);
            DataTable dt = new DataTable();
            adapter.Fill(dt);
            return dt;
        }
        public static int ExecuteScalar(string sql)
        {
            //查总数之用
            SqlConnection myConn = Conn;
            SqlCommand cmd = new SqlCommand(sql, myConn);
            if (myConn == null || myConn.State == ConnectionState.Closed)
            {
                myConn.Open();
            }
            
            int res = Convert.ToInt32(cmd.ExecuteScalar());
            myConn.Close();
            return res;
        }
    }他没有命名空间的话  你直接DAL.方法就行了
      

  9.   

    DAL.ExecuteNonQuery();
    这样的方式使用。 
    一般来说 DAL你专门建立一个项目在解决方案中,
    然后你的BLL层去引用他。
      

  10.   

    光标移到红色波浪线上,关了输入法按ctrl+. 
      

  11.   

    我太菜了,完全不知道您说的什么。BLL层??
      

  12.   

    Ni实在弄不好就给他加个命名空间好了,或者你新建一个DAL类,把中间的代码复制过去肯定就没问题了。
      

  13.   

    不行啊,给他那个类加个namespace qili{}也不行啊在其他文件引用就说是找不到qili。。
      

  14.   

    在文件夹上添加引用,
    在后台中引用DAL