0

.net API を介してプログラムで web.config 接続文字列からサーバー名とデータベース名の両方を取得するにはどうすればよいですか? できれば、私が作成した html または xml パーサーを使用しないでください。この種の情報を取得する最も簡単な方法を探しています。web.config スニペットの例:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="ConnectionString" connectionString="Provider=SQLOLEDB;Data Source=MyServer;User ID=admind;password=ju7mpst@rterz_Fak3;Initial Catalog=dbDatabase" providerName="System.Data.OLEPlethora"/>
  </connectionStrings>
<system.web>

結果: サーバー=MyServer データベース=dbDatabase

接続文字列設定の取得に関するこのリンクを見つけました。これははるかに単純に見えますが、多くの接続文字列を反復できるかどうかはわかりません。

4

1 に答える 1

3

configから接続文字列を取得します。

var myConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"].ToString();

次に、oledb connectionstring Builderを使用して、接続文字列を解析し、関連する部分を抽出できます。

var builder = new System.Data.OleDb.OleDbConnectionStringBuilder(myConnectionString);
var servername = builder["Data Source"];
var database = builder["Initial Catalog"];

Console.WriteLine("server={0}, database={1}", servername, database);
于 2012-12-06T22:08:45.913 に答える