conn.Close();//连接用完后结束后 请把这句加上……
解决方案 »
- 帮我写个c#版的http代理程序
- 请教高手 excel 导出 问题
- C#关于串口通信
- 100分求够asp.net在线编辑器原代码一个
- 怎么样把用代码写的数据库连接,dataset等,在报表的左侧显示出来,然后方便地用拖曳地方式设计报表.
- 哪一位大侠知道就说一句谢谢呀?
- 在.NET中怎么从Oracle数据库中读取DOM,DEM,DRG等栅格图像呢?
- 怎样使 from action 中的连接在新窗口打开啊?
- 怎样才可以在主窗体Form_load的时候就把本身隐藏掉,用alt+Tab也不能切换出来?
- 如何发布C#编写的应用程序?如何制作安装包?
- 未能加载文件或程序集,求助
- 怎样捕捉到光标移入listbox中的哪个item?
{
SqlConnection conn=new SqlConnection(ConnStr); conn.Open(); SqlCommand cmd=new SqlCommand(str,conn); int n=cmd.ExecuteNonQuery(); return n; conn.Close();
}这是数据连接层 里面的一个方法的代码,其他的都是用这种模式写的.是不是哪里有问题
帮忙看看!!!
{
string str="insert into XinwenGuanli(Title,FabuDate,category) values ('"+title+"','"+date+"','"+biaoti+"')"; int j=DataA.DataAccessDA.insertXinwen(str); return j;
}这段代码是业务逻辑层 里面与上面一段相连的代码
看看是不是哪里有问题...
要用try-finally或者using包围起来
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open();
Console.WriteLine("ServerVersion: {0}", connection.ServerVersion);
Console.WriteLine("State: {0}", connection.State);
}
类似于这样
{
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();
}
}
您试图在此 Web 服务器上访问的 Web 应用程序当前不可用。请点击 Web 浏览器中的“刷新”按钮重试您的请求。 管理员注意事项: 详述此特定请求失败原因的错误信息可在 Web 服务器的系统事件日志中找到。请检查此日志项以查明导致该错误发生的原因。
我要疯了啊,我把他都改成了你的模式之后,就又报上面的错啊... 救命!!!!!!!!!!
Dispose销毁连接的话,严重浪费资源,不如.Close使其释放回连接池~
我不行了.... 各位大哥大姐......
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;
}//先这么写,试下 然后在规范代码
啊Red_angelX(八戒) :这位兄台,请问是把什么写到finally里面啊!!!
应该报警告呀..永远不会执行的代码
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();//这个代码写在这个位置,从不会执行呀
}
还是 服务器不可用啊
--------------------------
应是前面打开了太多连接没关闭的原因,重启一下应该可以了
我现在换了台服务器,他又说 conn.Open() 没将对象引用设置到对象的实例
我再用存储过程 来写了实现一下,看行不行....
return n;conn.Close(); 改过来了好不好啊!!!现在用存储过程 错误的是一大堆 乱码!!! 还有没有新的方法啊
return n;
conn.Close();2.改了以后出现“服务器应用程序不可用您试图在此 Web 服务器上访问的 Web 应用程序当前不可用。请点击 Web 浏览器中的“刷新”按钮重试您的请求。”可能是因为同一页面多次使用conn,而你前面的代码将连接成功关闭后,未能在需要使用时打开。改之前能用是因为你的conn.Close根本就没执行到。3."我现在换了台服务器,他又说 conn.Open() 没将对象引用设置到对象的实例",既然换了服务器,conn.open打开连接出错,看看连接字符串或数据库服务器防火墙设置等等,原因就多了,具体情况根据你自己的环境具体修改4."现在用存储过程 错误的是一大堆 乱码!!! "最早的问题和存储过程无关,你用存储过程错误一大堆,请检查你的存储过程代码和修改过的程序代码