public abstract class DbHelperSQL
    {
        public static string connectionString;
        static DbHelperSQL()
        {            
            connectionString =  ConfigurationSettings.AppSettings["db1"];
        }
............一系列数据库访问的静态方法
     }现在我想继承这个类,访问另外一个数据库  但为什么老是出错,总是不能分别读取两个连接字符串。 
请问这样的写法错在哪里?    public class DbHelperSQL1 : DbHelperSQL
    {
        static DbHelperSQL1() {            connectionString = ConfigurationSettings.AppSettings["db2"];
        }
    }
     

解决方案 »

  1.   

    不用集成,不用写新类直接调用ConfigurationManager的方法
      

  2.   

    想面向对象设计?那么就删除你的各个static。
      

  3.   


    public abstract class DbHelperSQL
      {
      public string connectionString;
      public virtual string GetConnectionString()
      {   
        return ConfigurationSettings.AppSettings["db1"];
      }
    ............一系列数据库访问的静态方法
      }
    public class DbHelperSQL1 : DbHelperSQL
      {
      public override string GetConnectionString() {  return  ConfigurationSettings.AppSettings["db2"];
      }
      }