哪个实现更适合静态数据库连接?

时间:2016-08-27 17:15:13

标签: c# mysql database-connection

我知道使用db.So我班上的i有静态对象:

static private MySqlConnection conn = null;

    public static Boolean postoji(String username, String password)
    {
         conn = new MySqlConnection("Server=127.0.0.1;Database=cs322;Uid=root;Password =; ");
        Boolean rez=false;
        try
        {
            conn.Open();...

在这个类中我有5个mehtods,所以我想,最好让这个静态对象为null,并在每个方法中初始化它们。或者有一个alrady创建的静态对象。

private MySqlConnection conn== new MySqlConnection("Server=127.0.0.1;Database=cs322;Uid=root;Password =; ");

和方法只是使用它们。

2 个答案:

答案 0 :(得分:0)

我会说更好的是在web.configapp.config中使用此连接字符串并从那里读取它,而不是在代码中定义连接字符串。因此,将来如果您的连接字符串需要更改,您知道只有一个地方更改会出现,编辑配置文件也不需要您重新发布您的代码。

答案 1 :(得分:0)

您应该将所有连接字符串放在配置文件中。下面是用于从confile fie中输入和读取它的代码示例。

网络配置文件

<add name="ConnectionStringName"  connectionString=127.0.0.1"; Initial Catalog=cs322; Integrated Security=True"/>

同样,我建议将你的连接包装在Using块中,如下例所示。

从后面的代码中读取代码

using(MySqlConnetion connection = new MySqlConnetion(ConfigurationManager.ConnectionStrings["ConnectionStringName"].ToString()))
{
     connection.open();
     //setup and execute query
} //connection gets closed here

此处,退出使用块后,连接将关闭。