2013-05-01 10 views
6

Visual Studio 2012Framework 4.5を使用してWebアプリケーションを作成していますが、MVC 4を使用していますが、問題が残っています。mvcにDbContextがありません4

私はDbContextを使用する必要がなく、I'cantは私のプロジェクトで、私はSystem.Data.Entityを追加意味し、それはまだエラー

に型または名前空間名を与えることを見つけるには、「DbContext」が見つかりませんでした( にはusingディレクティブまたはアセンブリ参照がありませんか?)

どうすればこの問題を解決できますか?

+2

[nuget](http://nuget.org/packages/EntityFramework/5.0.0)からEFをインストールするのを忘れましたか? –

+0

@CuongLe nope既にそこにある –

+0

@AlenJoyあなたのプロジェクトに 'DBML'ファイルを追加しましたか? 'DBML'の名前は' DbContext'と同じにする必要があります – RajeshKdev

答えて

18

DbContextは、EntityFramework.dllに住んでいます。 See this for reference

あなたはPMC

Install-Package EntityFramework -Version 5.0.0 

あなたはツールに行くことによってPMCに取得することができますで、このコマンドを入力してnugetからそれを得ることができます - > [ライブラリパッケージマネージャ - VS

中>パッケージマネージャコンソール
+0

MVCのMusicStoreチュートリアルを行い、DbContextとDbSetがそのコメントを見逃しているというエラーが発生しました。このソリューションは完璧に機能します!あなたはミスター@vonvありがとうございます。 –

+0

ありがとう!バディ、大きな修正 – kbo4sho88

0

DbContextは、System.Data.Entityではなく、EntityFramework.dllの一部です。

EF 4.1で導入されました。 Visual Studio 2012を使用して、適切なNuGetパッケージをインストールすることができます。 Projectを右クリックし、 "Manange NuGet Packages"を選択し、適切なEFバージョンを見つけてインストールします。

4

受け入れ答えに加えて、これはまだ言及されていない状況で人々を助けることがあります。

私は、Visual Studioで既存ソリューションにおける新しいmvc4プロジェクトを作成した場合、この問題は私のために発生したがこのソリューションには既にmvc4のプロジェクトが含まれていましたが、2番目のプロジェクトを作成すると、System.Data.Entityパッケージ(DbContextを含む)が見つかりませんでした。全体的なソリューションは、すでにパッケージがインストールされていたため、インストールパッケージのコマンドは、このような状況で問題を解決しない:

PM> Install-Package EntityFramework 
'EntityFramework 6.0.1' already installed. 

問題がEntityFrameworkパッケージは自動的に新しいプロジェクトではインストールされませんでした、あなたがする必要があります手動で追加してください。右上のボックス内のEntityFrameworkため

Tools -> Library Package Manager -> "Manage NuGet Packages for Solution..." 

検索、管理をクリックして、新しいソリューションのためのボックスをチェックしてくださいに移動します。新しいプロジェクトが正しく構築されるはずです。

3

あなたは以下の手順でそれを行うことができます。

ソリューションエクスプローラでプロジェクトを右クリックします。

...参照の追加System.Data.Entity.dllファイル(またはEntityFramework.dll)について

ルックを選択して、プロジェクトに追加します。

あなたはそれがインストールされている場合にも、NuGetを通じて同じことを達成することができます

を右クリックし、[ソリューションエクスプローラでプロジェクトを。

... NuGetパッケージの管理EntityFrameworkパッケージ用

検索を選択してください。

[インストール]をクリックして既存のプロジェクトに追加します。

、あなたのアプリケーションにこれらを首尾を追加した後、あなたは上のDbContextとDbSetオブジェクトを使用しているページ内のusingステートメントを追加するだけで必要があります:

using System.Data.Entity; 

Reference Link

2

私もこの問題を抱えていましたが、メニューからプロジェクト→管理→Nugetパッケージを管理するまでEntityFrameworkをインストールしなければ動作しませんでした。

0

この問題は、既存のmvc4プロジェクトの解決策。ソリューションには既にmvc4プロジェクトが含まれていましたが、2番目のプロジェクトを作成したときにSystem.Data.Entity package(DbContextを含む)が見つかりませんでした。全体的なソリューションは、すでにパッケージがインストールされていたのでinstall-packageコマンドは、このような状況で問題を解決しない:

PM> Install-Package EntityFramework 
'EntityFramework 6.0.1' already installed. 

問題がEntityFrameworkパッケージは自動的に新しいプロジェクトではインストールされませんでした、あなたはそれを追加する必要があります手動で右上のボックス内のEntityFrameworkため

Tools -> Library Package Manager -> "Manage NuGet Packages for Solution..." 

検索、管理をクリックして、新しいソリューションのためのボックスをチェックしてくださいに移動します。新しいプロジェクトが正しく構築されるはずです。

関連する問題