先来说说LINQ to SQL和Entity Framework的区别:
LINQ to SQL和Entity Framework都是一种包含LINQ功能的对象关系映射技术。他们之间的本质区别在于EF对数据库架构和我们查询的类型实行了更好的解耦。使用EF,我们查询的对象不再是完全对应数据库架构的C#类,而是更高层的抽象:Entity Data Model。这为我们提供了额外的灵活性,但是在性能和简单性上面也会有所损失。
LINQ to SQL和Entity Framework各有所长,LINQ to SQL是一个轻量级的ORM框架,旨在为SQL Server数据库提供快速的应用程序开发,优点是易于使用、简单、高性能。而Entity Framework的优点是:其为创建数据库架构和实体类之间的映射提供了更好的灵活性,它还通过提供程序支持除了SQL Server之外的第三方数据库。
为了使用Entity Framework,你需要创建一个实体数据模型(Entity Data Model),下面是步骤:
1.右键点击“解决方案浏览器”窗口中的Models文件夹,并且选择菜单项,“添加(Add)”,“新建项(New Item)”,如下图:
2.在出来的对话框中选择“数据(Data)”,再选择“ADO.NET实体数据模型(ADO.NET Entity Data Model)”,并命名为MyDBModel,如下图:
3.点击“添加”按钮将会运行数据模型向导。
4.在“选择模型内容(Choose Model Contents)”中,选择“从数据库生成(Generate from a database)”选项,并且点击“下一步(Next)”按钮,如下图:
5.在“选择数据连接(Choose Your Data Conncetion)”中,选择MoviesDB.mdf数据库连接,如果没有,可以新建,如下图:
6.在弹出的对话框中配置连接属性,如下图:
7.上步中点击“确定”后,并点击子下一步,如下图:
8.选择数据库对象,点击完成,如下图:
完成后,如图:
9.在创建好实体数据模型以后,你可以利用实体设计器来修改模型。通过双击“解决方案浏览器”中Models文件夹中的MoviesDBModel.edmx文件,你可以在任何时候打开实体设计器。
如果你想要重命名实体类,你可以在实体设计器的类名上双击,并且输入一个新的名字,如下图。或者,你可以在实体设计器中选择一个实体,然后在属性窗口中修改实体类的名字。