一、在线安装
在联网的情况下,一般通过NuGet安装EF,具体步骤如下:
- 右键单击项目名称或引用,选择“管理NuGet程序包”。
2、在弹出的对话框中选择Entity Framework并单击安装。
安装完成后,项目中发生如下变化:
- 引用中多了EntityFramework与EntityFramework.SqlServer两个应用;
- 项目中增加了packages.config文件;
- App.config中增加了<entityFramework>与<configSection>元素,主要是<entityFramework>,主要内容为:
<entityFramework> <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework"> <parameters> <parameter value="mssqllocaldb" /> </parameters> </defaultConnectionFactory> <providers> <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> </providers> </entityFramework>
可以这么说,EF安装完毕后项目中应当有上述三方面的变化,如下图所示:
二、离线安装
注意:直接在“引用”中添加EntityFramework与EntityFramework.SqlServer的引用是错误的。参考前文讲述的安装EF的几个变化,如果没有发生这些变化,EF就没有被正确安装。
1、获取EF安装包。这个包不联网也可以获得,方法是通过向项目中添加一个EDM来得到。新建一个项目,并向其中添加实体数据模型。
2、选择“来自数据库的EF设计器”或“来自数据库的Code First”都可以,我选择Code First。
3、添加完成后,项目会发生上文所述的变化,同时,在解决方案目录下会增加一个packages文件夹,里面就是EF的安装包。可以将安装包拷出放在自己指定的位置。
4、在需要离线安装EF的项目中选择“管理NuGet程序包”->“设置”,添加新的程序包源,修改程序包源为EF安装包所在的位置,然后点击“更新”。
5、在“管理NuGet程序包”中选择package source,按照联网的方式即可安装EF。安装完成后会在“已安装的包”中看到。
总结:离线安装EF与在线安装的不同主要在于要新建一个package source,并在安装的时候选择该package source,其他步骤与在线安装是相同的。