gpt4 book ai didi

c# - 访问数据库的静态对象 - asp.net

转载 作者:行者123 更新时间:2023-11-30 15:45:21 24 4
gpt4 key购买 nike

嗨我正在开发一个网站我有一个类是与数据库的连接该类包含一个写入和读取数据库的方法目前,该类是静态的,它的方法也是我从这样的网页中调用类:

//mydbClass is the name of the class , not an object
mydbClass.getUserName(userID)

问题是: 我是否需要创建一个类对象,以便每次用户请求页面时 创建一个新对象并与数据库通信,如下所示:

mydbClass mydb = new mydbClass();
mydb.getUserName(userID)

因为如果我不创建一个新对象 所以所有读取或写入数据库的用户 会用同一个静态对象,那么会很忙,说不定会崩溃 我想要一个答案 谢谢米迦

最佳答案

如果你想继续使用你的类有点像静态类但有状态,你可以实现单例模式

http://en.wikipedia.org/wiki/Singleton_pattern

public class mydbClass{ 
private static mydbClass _current = new mydbClass();
public static mydbClass Current{
get{
return _current;
}
}
private mydbClass(){}
public User getUserName(userid){
//be sure to create a new connection each times
}
}

这里的优点是您可以简单地在此类中实现接口(interface),打破依赖关系,然后模拟它以进行测试。

无论如何,您总是必须在每次请求时创建一个新连接,而不是创建一个静态连接对象。

关于c# - 访问数据库的静态对象 - asp.net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5278694/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com