怎理解IM软件创建数据库连接对象SqlConnection 不能定义为static? 本帖最后由 tasolla 于 2011-04-03 18:23:00 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 静态方法和静态变量是两码事...你们老师也是个半瓶子,这问题和IM没有半毛钱关系...在OOP中静态成员其实是不应该存在的,但是工程方法是不讲八股文的,需要就可以有...但是有必要的设计原则防止滥用... 1. 这个问题可以和IM没有关系2. 可以这样public static SqlConnection connection; //然后再方法内部实例化千万不能这样public static SqlConnection connection = new SqlConnection(connString);否则多个用户并发的时候死的很难看 我由糊涂了,不太明白这个和IM可以没有关系是什么意思,比如如果是个管理系统之类的项目,我就可以写成static SqlConnection 是吗?我想上课时所指的就是你这个什么“并发”之类的问题,然后我就是并不明白,如果是IMDBHelper类为什么不能写成public static SqlConnection connection = new SqlConnection(connString);啊,为什么会死? 你所指的多用户并发就是恰好多用户同一时间发来IM消息吗? 如果所有的用户都用的是同一个数据库连接现在A用户在执行一个独占连接的操作(比如DataReader),那么其他用户的数据库操作就可能都失败可以把这个静态连接在方法内部实例化,比如class DBHelper{public static SqlConnection connection = null;public static int ExecuteNonQuery(...){ connection = new SqlConnection(connString); ...}}这样每一个数据库连接都是一个新的连接,就可以避免此问题 关于C#自定义控件的问题 大家好,怎么获得listview中的行数???? winform中的路径问题 请问在.NET 里面 怎么样调试出数据溢出测试啊?? 求救 前辈们帮帮忙,一个SQL语句问题 特菜的小问题,关于怎样获取工程名称?就是project name?(在线等,解决即给分) 如何实现实例化一个collection???? 串口扫描枪似乎比键盘口的要好啊 关于asp.net发布网站后报错,在线等,谢谢 何为契约 C#怎样把含有中文的字符串转化为数组?
2. 可以这样
public static SqlConnection connection; //然后再方法内部实例化
千万不能这样
public static SqlConnection connection = new SqlConnection(connString);否则多个用户并发的时候死的很难看
public static SqlConnection connection = new SqlConnection(connString);啊,为什么会死? 你所指的多用户并发就是恰好多用户同一时间发来IM消息吗?
{public static SqlConnection connection = null;public static int ExecuteNonQuery(...)
{
connection = new SqlConnection(connString);
...
}
}这样每一个数据库连接都是一个新的连接,就可以避免此问题