Data Source=WWW-1FC9BED646C\SQLEXPRESS;DataBase=Test;uid=sa;pwd=sa;
Data Source=server;Initial Catalog=db;User ID=test;Password=test;怎么取到数据库名,用indexof()这个方法我会,是不是还有其他更简单的方法,请大家提供

解决方案 »

  1.   

    用split方法,用空格分割成数组,再做处理,我感觉还不如indexof方便
      

  2.   

    楼主的意思是不想写代码从连接字符串中截取?
    那么就把数据库名作为单独的参数添加到webconfig文件的<appSettings>节点中,然后用
     ConfigurationManager.AppSettings["databaseName"]这种方式获取,能否满足你的要求?
      

  3.   

    有个问题,如果顺序不固定,就错了
    个人觉得如果有对字符串分隔
    可以考虑先split(';'),再找到DataBase.tolower="database",再解析
      

  4.   

    有,不过效率不高。
    string connectionString = @"Data Source=WWW-1FC9BED646C\SQLEXPRESS;DataBase=Test;uid=sa;pwd=sa;";// 获取你的连接字符串,可以输入进来
    SqlConnection connection = new SqlConnection(connectionString);
    string dataBaseName = connection.Database; 
    不过这样有一个好处,就是:无论你的数据库连接字符串是如何写的,都兼容。毕竟数据库连接字符串有好多种写法。Server == Data Source ,Database == Initial Catalog它们是等价的