0

データベースにアクセスするためにSybaseデータベースとエンティティフレームワークを使用するアプリケーションに取り組んでいます。接続自体を開いて閉じるアプリケーションを作成しようとしています。Sybase データベース ファイルを使用してモデルを作成し、それに接続してデータを取得しました。しかし、データを取得しようとすると、「基になるプロバイダーを開けませんでした」という例外が発生します。

これが私のコードです。

var connectionString = metadata=res://*/SampleModel.csdl|res://*/SampleModel.ssdl|res://*/SampleModel.msl; + 
         provider=iAnywhere.Data.SQLAnywhere; + 
         provider connection string="DBF=D:\SampleDatabase.db;UID=DBA;PWD=sql"
var dataContext = new SampleContext(connectionString);
var contacts = dataContext.Contacts; --> Here I get this exception.

注: ODBC で DSN を作成し、ファイル名を指定する代わりに DSN を使用すると、データベースに接続されていませんという例外が発生します。この接続を開いて閉じないと、正常に動作します。しかし、DSN エントリを作成して手動で開きたくありません。私は自分のプログラムにこれをさせたいと思っています。

4

1 に答える 1

1

Sybase のバージョンに問題がありました。Sybase 12 の 3840 ビルドを使用していました。それを削除して 3769 バージョンをインストールすると、正常に動作しました。さまざまなフォーラムで、最新 (3840) に問題があることがわかりました。

于 2013-03-29T06:58:42.423 に答える