从.ini文件中读取连接字符串

时间:2014-12-01 08:55:11

标签: c# .net console-application

我的.ini文件包含以下格式的ConnectionString;

[system]
DatabaseDriver=ODBC;DSN=MyDb;database=MyDb;
OLEDB=Provider=SQLOLEDB.1;Initial Catalog=MyDb;Data Source=PTCIMG_75x_DS;
DatabaseVersion=7.6.5
EEOApplied=Y

现在我需要从控制台应用程序中读取它,如下所示;

  var parser = new IniParser.FileIniDataParser();
  StringBuilder dbConnInt= new StringBuilder();
  string ComDBstring;

  dbConnInt = new StringBuilder();
  dbConnInt.Append("C:\\Program Files\\Database.ini"); 
  IniData dbConn = parser.LoadFile(dbConnInt.ToString());

  ComDBstring = dbConn["system"]["OLEDB"];

但是,我得到的只是ConnectionString的第一部分,即Provider=SQLOLEDB.1。但我需要整行,Provider=SQLOLEDB.1;Initial Catalog=MyDb;Data Source=PTCIMG_75x_DS;。为什么它由;分隔并仅返回第一部分?

任何人的想法?

非常感谢您的期待。

1 个答案:

答案 0 :(得分:2)

因为根据文档; and onward is interpreted as a comment

您可以将评论分隔符更改为#,例如:

// Change character used as comment delimiter (defaults to ';')
parser.CommentDelimiter = '#';