本来以为已经会了,可动手时发现许多问题还是模糊不清,正所谓眼高手低。只能重新查资料,再复习一遍。
vs.net2013 ef6 mvc5 sqlserver2008
一、建立数据库 Blogging
二、创建表,插入测试数据
CREATE TABLE [dbo].[Blogs] ( [BlogId] INT IDENTITY (1, 1) NOT NULL, [Name] NVARCHAR (200) NULL, [Url] NVARCHAR (200) NULL, CONSTRAINT [PK_dbo.Blogs] PRIMARY KEY CLUSTERED ([BlogId] ASC) ); CREATE TABLE [dbo].[Posts] ( [PostId] INT IDENTITY (1, 1) NOT NULL, [Title] NVARCHAR (200) NULL, [Content] NTEXT NULL, [BlogId] INT NOT NULL, CONSTRAINT [PK_dbo.Posts] PRIMARY KEY CLUSTERED ([PostId] ASC), CONSTRAINT [FK_dbo.Posts_dbo.Blogs_BlogId] FOREIGN KEY ([BlogId]) REFERENCES [dbo].[Blogs] ([BlogId]) ON DELETE CASCADE ); INSERT INTO [dbo].[Blogs] ([Name],[Url]) VALUES ('The Visual Studio Blog', 'http://blogs.msdn.com/visualstudio/'); INSERT INTO [dbo].[Blogs] ([Name],[Url]) VALUES ('.NET Framework Blog', 'http://blogs.msdn.com/dotnet/');
数据库中表如下:
上面为原有数据库示例,将在当前状态使用 CodeFirst
主外键创建时使用了级联删除,以后要改成软删除,所以,也不会用到。
三、创建解决方案及项目
四、安装新版EF
五、添加数据实体对象
六、生成的上下文及实体对象
web.config中生成的连接字符串
七、为Blog实体对象添加特性
七、测试生成的实体对象
建立项目时,如果身份验证方式选择无,系统不导入验证js等文件,需要手动将其复制进项目。
至此,基于现有数据库的CodeFirst基础部分已经完成,并测试通过。
本文参考
本文及原文版权全部归上述作者所有