Entity Framework-Code First to a New Database

本文根据微软官方文档介绍使用Entity Framework Code First创建新数据库的过程,涉及模型创建、上下文定义、数据操作、数据库迁移及数据注释与Fluent API的使用。在Visual Studio中,创建导航属性确保延迟加载,定义派生上下文,插入和查询数据,并通过Migrations处理模型变化。同时,展示了Data Annotations和Fluent API配置模型的方法。
摘要由CSDN通过智能技术生成

文献参考

MSDN EF框架官方文档
此文章完全根据微软官方文档资料,整个过程我已经在visual studio 中走了一遍,在这里将其总结下来,为以后复习所用,也为需要入门 Entity Framework 的朋友作为一个参考资料。力求准确无误。

创建模型(Model)

public class Blog 
{ 
    public int BlogId { get; set; } //这是EF默认的主键名称,ClassName+id,以便EF框架自动辨识
    public string Name { get; set; } 

    public virtual List<Post> Posts { get; set; } //这是一个导航属性,注意virtual的用法
} 

public class Post 
{ 
    public int PostId { get; set; } 
    public string Title { get; set; } 
    public string Content { get; set; } 

    public int BlogId { get; set; } //这个是外键,BlogId这个名称是标准的命名方法,需要注意
    public virtual Blog Blog { get; set; } //这是一个导航属性,注意virtual的用法
}

说明:
1. 导航属性分别为 Blog.Posts and Post.Blog
2. 通过使导航属性virtual化,确保了EF框架的延迟加载特征( Lazy Loading
feature),延迟加载意味着当访问它们时,这些属性的内容将会被自动地从数据库中加载出来。

创建上下文(context)

现在是时候定义一个派生的上下文了,它代表着同数据库(database)的一次会话(session),允许我们去查询和保存数据。我们定义一个上下文,它派生于 System.Data.Entity.DbContext ,暴露出一个泛型成员 DbSet<TEntity> 。因为要用到EF框架的类型,所以我们需要添加 EntityFramework NuGet package,添加的方法见地址: https://msdn.microsoft.com/en-us/library/jj193542(v=vs.113).aspx,第3节。

添加命名空间 using System.Data.Entity; ,定义下面的派生类:

public cla
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值