本来以为已经会了,可动手时发现许多问题还是模糊不清,正所谓眼高手低。只能重新查资料,再复习一遍。
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基础部分已经完成,并测试通过。
本文参考http://msdn.microsoft.com/zh-cn/data/jj200620
本文及原文版权全部归上述作者所有