日期:2013-06-09  浏览次数:20492 次

首先定义一个接口,具体名为Idatabase,在这个接口中,定义好数据库操作的方法名和参数,以及返回值,本案例中我定义如下方法:

public interface IDatabase

{

   bool Connect(string ConnectString);

    bool Open();

    bool Command(string SQL);

    void Close();

}

重要提醒:“接口一生唯谨慎,定义大事不糊涂”,编写接口时一定要考虑周全,并对参数、返回值进行反复推敲,为什么?因为所有的实现类都是要根据该接口的规范进行代码具体编写,也即接口的定义是公用的,一旦改动了接口,后果就是所有的实现类也都必须相应调整。

然后就是编写具体的实现类了,客户要求多少不同类型的数据库,你就定义多少个Idatabase的实现类,虽然工作量大了点,可当你看到客户满意的笑容时,你心里也就会有一种由衷的幸福感,好了,SqlServer实现类代码如下:

public class SqlServer : IDatabase

    {

        SqlConnection conn;

        SqlCommand command;

        public bool Connect(string ConnectString)

        {

            try

            {

                conn = new SqlConnection(ConnectString);

                return true;

            }

            catch(SqlException)

            {

                return false;

            }

           

        }

        public bool Open()

        {

            try

            {

                conn.Open();

                return true;

            }

            catch(SqlException)

            {

                return false;

            }

        }

        public bool Command(string SQL)

        {

            try

            {

                command = new SqlCommand(SQL,conn);

                command.ExecuteNonQuery();

                return true;

            }

       &