22

I am trying to use ADO.Net Codefirst feature of latest Entity Framework 4.0. As part of that I have installed Entity Framework CTP 4 from Microsft and using Scott's tutorial to create the model first. Inside the tutorial DBContext and DBSet<> is specified. Could some tell what is the reference to be used in order to access this class.

I have used the following references however nothing happens for DBContext and DBSet<>

  • System.Data.Entity
  • System.Data.Entity.Design
manu
  • 1,807
  • 4
  • 25
  • 32

7 Answers7

25

You can use the Library Package Manager if you have it (it installs automatically with MVC 3.0).

From within your project in Visual Studio 2010, go to

Tools > Library Package Manager > Package Manager Console

From within your project in Visual Studio 2013, go to

Tools > NuGet Package Manager > Package Manager Console

In the console, after the PM> prompt, type

install-package entityframework

This will install the package and add the EntityFramework reference to your project.

user272735
  • 10,473
  • 9
  • 65
  • 96
Feckmore
  • 4,322
  • 6
  • 43
  • 51
  • Install-Package : Unable to find package 'entityframework'At line:1 char:1 ...any idea why? – brntsllvn Jan 07 '16 at 18:01
  • Looking at NuGet-Solution package manager, I can see I have EntityFramework installed (v6.0.2)...but DbContext still could not be found. Any help would be great. – brntsllvn Jan 07 '16 at 18:07
14

Use CTP5 instead it is newer version with some changes in API. You have to add reference to EntityFramework.dll which is installed in CTP directory - default is: c:\Program Files\Microsoft ADO.NET Entity Framework Feature CTP5\Binaries\EntityFramework.dll for 32bit system. On 64bit system it will be placed in Program Files (x86).

Ladislav Mrnka
  • 360,892
  • 59
  • 660
  • 670
4

Use "DbContext" vs "DBContext", and "DbSet" vs "DBSet". The case sensitivity is the issue.

  • 1
    Thomas, I have just speciied the code, not copying and pasting this. I used the correct case in my code as it was copied from original tutorial. However thanks for letting me know that the keywords are in incorrect case. Cheers. – manu Feb 11 '11 at 09:28
  • thats it...I did the mistake. – Bimal Das Feb 01 '16 at 13:40
3

To add EF to your project use the Package Manager Console and issue the command:

Install-Package EntityFramework

You shouldn't link directly to the DLLs' installed location as mentioned in another answer.

Josh M.
  • 26,437
  • 24
  • 119
  • 200
1

I was following the MvcMusicStore Tutorial (using Mvc 4 instead of Mvc 3).

I found in Part 4 I was having issues with this (http://www.asp.net/mvc/tutorials/mvc-music-store/mvc-music-store-part-4).

When I added the following reference using System.Data.Entity;, I got the following error:

the type or namespace name 'entity' does not exist in the namespace 'system.data'

@Fecklmore's solution worked for me.

Open the Package Manager Console by going to Tools > Library Package Manager > Package Manager Console.

Then type in the following: Install-Package EntityFramework

This will install EntityFramework (i.e. EF) into your project, and will eliminate the error above.

Adel Khayata
  • 2,717
  • 10
  • 28
  • 46
1

The blogpost mentions the assembly:

The DbContext and DbSet classes used above are provided as part of the EF4 Code-First library. You’ll need to add a reference to the System.Data.Entity.CTP assembly that is installed into the \Program Files\Microsoft ADO.NET Entity Framework Feature CTP4\Binaries directory to reference these classes. You’ll also want to add a “using System.Data.Entity” namespace statement at the top of your “NerdDinners” class file.

However I do believe the new CTP5 includes some changes to codefirst, so I would suggest to take a look at that one instead.

Yannick Motton
  • 34,761
  • 4
  • 39
  • 55
0

if you are using .NET 3.5 then change your target framework to .NET 4.0

Arek Bee
  • 329
  • 3
  • 9
  • Thanks indeed @Arek Bee, I have used .Net 4.0 however some how reference is not there for Entity due to some reason. Later after installing the CTP5 everything was fine – manu Jun 17 '11 at 16:47