conn.Close();//连接用完后结束后 请把这句加上……

解决方案 »

  1.   

    我在每个连接用完之后,全部用conn.Close()关闭了连接.但还是不行啊.....请问 池 是在哪里设置的啊....
      

  2.   

    是不是用在for循环里开conn.open()了?
      

  3.   

    public static int insertXinwen(string str)
    {
    SqlConnection conn=new SqlConnection(ConnStr); conn.Open(); SqlCommand cmd=new SqlCommand(str,conn); int n=cmd.ExecuteNonQuery(); return n; conn.Close();
    }这是数据连接层  里面的一个方法的代码,其他的都是用这种模式写的.是不是哪里有问题
    帮忙看看!!!
      

  4.   

    public int insertDB(string title,string date,string biaoti)
    {
    string str="insert into XinwenGuanli(Title,FabuDate,category) values ('"+title+"','"+date+"','"+biaoti+"')"; int j=DataA.DataAccessDA.insertXinwen(str); return j;
    }这段代码是业务逻辑层  里面与上面一段相连的代码
    看看是不是哪里有问题...
      

  5.   

    return n;conn.Close();你都return了,哪里还能close呢?难道你编译的时候没看到那个“不可到达的代码”的提示?
    要用try-finally或者using包围起来
      

  6.   

    string connectionString = GetConnectionString();
        using (SqlConnection connection = new SqlConnection(connectionString))
        {
            connection.Open();
            Console.WriteLine("ServerVersion: {0}", connection.ServerVersion);
            Console.WriteLine("State: {0}", connection.State);
        }
    类似于这样
      

  7.   

    那你能帮忙写一个吗,不知道怎样写啊...  把这个conn.Close()写在返回值之前,不知道会怎样呢?
      

  8.   

    public static int insertXinwen(string str)
    {
    SqlConnection conn=new SqlConnection(ConnStr);
    using(conn)
    {
    conn.Open();SqlCommand cmd=new SqlCommand(str,conn);int n=cmd.ExecuteNonQuery();return n;
    }
    }或者public static int insertXinwen(string str)
    {
    SqlConnection conn=new SqlConnection(ConnStr);
    try
    {
    conn.Open();SqlCommand cmd=new SqlCommand(str,conn);int n=cmd.ExecuteNonQuery();return n;
    }
    finally
    {
    conn.Close();
    }
    }
      

  9.   

    服务器应用程序不可用 
    您试图在此 Web 服务器上访问的 Web 应用程序当前不可用。请点击 Web 浏览器中的“刷新”按钮重试您的请求。 管理员注意事项: 详述此特定请求失败原因的错误信息可在 Web 服务器的系统事件日志中找到。请检查此日志项以查明导致该错误发生的原因。 
    我要疯了啊,我把他都改成了你的模式之后,就又报上面的错啊...  救命!!!!!!!!!!
      

  10.   

    强烈推荐conn.Close();放到finally里面,这样即使出现异常,也可以关闭连接另外最好不要用Dispose,或放到using块里面
    Dispose销毁连接的话,严重浪费资源,不如.Close使其释放回连接池~
      

  11.   

    我是用的把 conn.Close() 放到finally里面啊.为什么他说  服务器不可用 啊
    我不行了.... 各位大哥大姐......
      

  12.   

    haha老大 你太有才了
    public static int insertXinwen(string str)
    {
             SqlConnection conn=new SqlConnection(ConnStr);
    conn.Open();
    SqlCommand cmd=new SqlCommand(str,conn);
    int n=cmd.ExecuteNonQuery();
    //return n; conn.Close();
             return n;
    }//先这么写,试下 然后在规范代码
      

  13.   

    cancerser(都是混饭吃,记得要结帖) :这位兄台,你的方法我又试了一遍,还是 服务器不可用
    啊Red_angelX(八戒) :这位兄台,请问是把什么写到finally里面啊!!!
      

  14.   

    return n;conn.Close();
    应该报警告呀..永远不会执行的代码
      

  15.   

    同意楼上
    public static int insertXinwen(string str)
    {
    SqlConnection conn=new SqlConnection(ConnStr);conn.Open();SqlCommand cmd=new SqlCommand(str,conn);int n=cmd.ExecuteNonQuery();return n;conn.Close();//这个代码写在这个位置,从不会执行呀
    }
    还是 服务器不可用啊 
    --------------------------
    应是前面打开了太多连接没关闭的原因,重启一下应该可以了
      

  16.   

    重起也都不行啊!!!! 还有什么高招没??
    我现在换了台服务器,他又说 conn.Open() 没将对象引用设置到对象的实例  
    我再用存储过程  来写了实现一下,看行不行....
      

  17.   

    return n;conn.Close();这个强的。
      

  18.   

    各位!!!我已经把
    return n;conn.Close();  改过来了好不好啊!!!现在用存储过程  错误的是一大堆  乱码!!! 还有没有新的方法啊
      

  19.   

    使用微软的DAAB来建立一个sqlhelp类,他会自动回收的
      

  20.   

    1.这个关闭连接不可到达,自然要改
    return n; 
    conn.Close();2.改了以后出现“服务器应用程序不可用您试图在此 Web 服务器上访问的 Web 应用程序当前不可用。请点击 Web 浏览器中的“刷新”按钮重试您的请求。”可能是因为同一页面多次使用conn,而你前面的代码将连接成功关闭后,未能在需要使用时打开。改之前能用是因为你的conn.Close根本就没执行到。3."我现在换了台服务器,他又说 conn.Open() 没将对象引用设置到对象的实例",既然换了服务器,conn.open打开连接出错,看看连接字符串或数据库服务器防火墙设置等等,原因就多了,具体情况根据你自己的环境具体修改4."现在用存储过程  错误的是一大堆  乱码!!! "最早的问题和存储过程无关,你用存储过程错误一大堆,请检查你的存储过程代码和修改过的程序代码