References for DBContext, DBSet<> in Entity Framework

穿精又带淫゛_ 提交于 2020-01-01 03:56:06

问题


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

回答1:


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).




回答2:


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.




回答3:


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




回答4:


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.




回答5:


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.




回答6:


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.




回答7:


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



来源:https://stackoverflow.com/questions/4898742/references-for-dbcontext-dbset-in-entity-framework

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!