2010-12-27 8 views
0

私はSQL Server CE 3.5 DBを「埋め込み」に設定しています。データベース私はVS 2010からそれを実行したときに関連する.edmxファイルとエンティティフレームワークのコードが動作持っエンベデッドDBを使用したプロジェクトの公開エンティティフレームワークとの接続

はapp.configを文字列は以下の通りです:

<add name="MapProjectDB2Entities1" connectionString="metadata=res://*/MapProjectDB.csdl|res://*/MapProjectDB.ssdl|res://*/MapProjectDB.msl;provider=System.Data.SqlServerCe.3.5;provider connection string=&quot;Data Source=MapProjectDB2.sdf&quot;" providerName="System.Data.EntityClient" /> 

しかし、ときに私は私のプロジェクトと実行を公開しますワンクリックデプロイメントフォルダからは、例外は「基本データプロバイダを開くことができませんでした」です。

私は何とか埋め込みデータベースに接続する必要があります。事前におかげでGoogleのヒットはこれに少しばかげている。

DBは、別のプロジェクトから読み込まれたライブラリ(DLL)プロジェクトのメンバーであることを言及する必要があります。

答えて

2

私のExeプロジェクトにDBを追加する必要がありました。そこから私は以下のように設定文字列を変更するために必要な:

差があるだけで| DataDirectoryの| \一部

<add name="MapProjectDB2Entities1" connectionString="metadata=res://*/MapProjectDB.csdl|res://*/MapProjectDB.ssdl|res://*/MapProjectDB.msl;provider=System.Data.SqlServerCe.3.5;provider connection string=&quot;Data Source=|DataDirectory|\MapProjectDB2.sdf&quot;" providerName="System.Data.EntityClient" /> 
関連する問題