3

dapper micro orm を firebird db でテストしたいのですが、firebird へのアクセスに苦労しています。

Firebird サーバーが稼働中で、データベースにはダミー データが入力されており、c:\mydatabases\test.fdb に保存されています。

接続文字列は

<add name="testDatabase" connectionString="User=SYSDBA;
           Password=XXX; Database=c:\mydatabases\test.fdb; 
           Data Source=127.0.0.1;" />

リポジトリ内で IDbConnection を使用してデータベースにアクセスしています

private IDbConnection db = 
     new SqlConnection(ConfigurationManager.ConnectionStrings["testDatabase"]
         .ConnectionString);

しかし、データにアクセスしようとすると例外がスローされます

タイプ 'System.Data.SqlClient.SqlException' の初回例外が System.Data.dll で発生しました

追加情報: SQL Server への接続を確立中に、ネットワーク関連またはインスタンス固有のエラーが発生しました。サーバーが見つからないか、アクセスできませんでした。インスタンス名が正しいこと、および SQL Server がリモート接続を許可するように構成されていることを確認してください。(プロバイダー: 名前付きパイプ プロバイダー、エラー: 40 - SQL Server への接続を開けませんでした)

で使用することは可能IDbConnectionですfirebirdか。そうでない場合は、何を提案しますか。

ありがとう

4

2 に答える 2

5

FBConnection代わりに使用する必要があります。

ダウンロードして参照FirebirdSql.Data.Firebirdし、代わりに

IDbConnection db = new SqlConnection...

これを使って

IDbConnection dbcon = new FbConnection(connectionString); 
于 2013-11-28T13:35:07.857 に答える
3

SqlConnectionは、SQL Server に固有のクラスです。ここから Firebird 用の ADO.NET プロバイダーをダウンロードする必要があります。これにより、次のように使用できるFirebirdSql.Data.FirebirdClient名前空間とクラスが得られます。FbConnection

private IDbConnection db = new FbConnection(ConfigurationManager.ConnectionStrings["testDatabase"].ConnectionString);

Firebird ADO.NET Provider の使用方法に関するその他の例については、こちらを参照してください。

于 2013-11-28T13:34:39.110 に答える