52

EF 4.3 をインストールし、プロジェクトを移行してアップグレードしようとしています。ただしadd-migration initial、パッケージ マネージャー コンソール経由でプロジェクトを実行しようとすると問題が発生します。

現在、例外がスローされていますNo connection string named 'MyApplicationEntities' could be found in the application config file.

今私の設定はそれをすべて持っています

<connectionStrings>
<add name="MyApplicationEntities" 
     connectionString="metadata=res://*/DataModel.csdl|res://*/DataModel.ssdl|res://*/DataModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=localhost;initial catalog=MyApplicationEntitiesDB;integrated security=True;multipleactiveresultsets=True;App=EntityFramework&quot;" 
     providerName="System.Data.EntityClient" />

問題がEF 4.3のバグなのか、それとも私が正しくやっていないことがあるのか​​わからない。

この投稿で問題は解決したと思いますが、完全ではありません。

誰でも答えが出ました。

サンジに感謝します。

4

9 に答える 9

108

あ、これはたまたま思いつきました。

取り除かなければならなかった

public MasterEntities()
    : base("name=MyApplicationEntities")
    //      ^^^^^
{
}

public MasterEntities()
    : base("MyApplicationEntities")
{
}

EF 4.3 は、接続文字列が呼び出されるのを好まないname=xxxxx

于 2012-06-11T11:42:20.197 に答える
43

Sanj が指摘した解決策は、接続文字列をデータベース プロジェクトの App.config から Web プロジェクトの web.config にコピーする必要があるということです。上記の回答が正しいとマークされている理由がわかりません。これをコメントではなく回答として追加しているので、将来の読者はこれに気付くでしょう。

于 2013-05-06T14:50:23.227 に答える
31

同じエラーが発生しましたが、正しい接続文字列名と DbContext が正しく宣言された web.config ファイルが既にありました。ただし、-Verbose を指定して add-migration を実行すると、「スタートアップ プロジェクト」が、コンテキストを含むプロジェクトとは別のプロジェクトであることがわかりました。そこで、スタートアップ プロジェクトを変更し、追加移行を再実行したところ、すべてうまくいきました!!

于 2014-01-28T19:32:30.203 に答える
8

起動プロジェクトの構成ファイルに接続文字列が含まれていることを確認してください。このリンクが役立つ場合があります。

于 2015-06-16T06:09:49.590 に答える
7

私もこの問題を抱えていて、それを解決しました

  1. 正しい を選択しますStartUp project
  2. パッケージ マネージャー コンソールでコマンドを再実行します。

物事は期待どおりに機能しました。

于 2015-05-18T20:50:04.237 に答える
3

同様の例外も発生しました。AppConfig は元々、エンティティ モデルを生成するプロジェクトで作成されます。ただし、他のプロジェクトを使用してアプリケーションを実行している場合 (私のソリューションにはいくつかのプロジェクトがあります)、実行中のプロジェクトに AppConfig を含める必要があります。

于 2013-11-08T07:57:29.923 に答える
0

私の場合、2 つのプロジェクトを取得しました。

ここに画像の説明を入力

接続文字列を DAL App.Config プロジェクトから WPF App.Config プロジェクトにコピーするだけです。

于 2021-02-23T19:02:37.573 に答える