データベースから生成された EF 5.0 モデルがあります。このモデルは、クラス ライブラリ プロジェクトに存在します。このクラス ライブラリ プロジェクトには、モデルの接続文字列情報を含む app.config ファイルがあります。
「データベースからモデルを更新」を選択するたびに、接続文字列を再入力する必要があります。app.config ファイルの文字列が表示されないようです。
また、モデルの更新中に、クリックして接続文字列を app.config に保存しても、保存されません。
ここに私のapp.configファイルがあります:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.4.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
</entityFramework>
<connectionStrings>
<add name="mapEntities"
connectionString="metadata=res://*/mapModel.csdl|
res://*/mapModel.ssdl|
res://*/mapModel.msl;
provider=Oracle.DataAccess.Client
provider connection string=
"Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=myserver.com)(PORT=1521)))(CONNECT_DATA=(SID=MYDB)));User Id=MYUSERNAME;Password=MYPASSWORD;""
providerName="System.Data.EntityClient" />
</connectionStrings>
</configuration>
app.config から EF に接続文字列を表示させるにはどうすればよいですか? モデルに関数インポートを追加する必要がありますが、モデルに接続が構成されていないと表示されるため、できません。
編集 ハッキーではありますが、解決策を見つけました。
OPは、プロジェクトで新しいEDMXファイルを再作成し、それを修正したと述べました。私も同じことをしました。古い EDMX ファイルを再生成しませんでした。新しいものを作成した後、古い EDMX に戻ったところ、現在は機能しています。