你的位置:首页 > ASP.net教程

[ASP.net教程]一步一步学EF系列一【最简单的一个实例】


整个文章我都会用最简单,最容易让人理解的方式给大家分享和共同学习。(由于live Writer不靠谱 又得补发一篇)


 

一、安装

   Install-Package EntityFramework

二、简单例子演示

/// <summary>  /// 博客用户及随笔类  /// </summary>  public class BlogUser  {    /// <summary>    /// 默认情况下属性被命名为ID、id或者[ClassName]Id,将映射为数据表中的主键    /// 如果没有类似的命名,并且也未显示指明主键,则生成失败,引发异常    /// </summary>    public int BlogUserId { get; set; }    public string BlogName { get; set; }    /// <summary>    /// 定义博客用户的随笔列表    /// virtual表示该列表为延迟加载    /// </summary>    public virtual ICollection<Post> Posts { get; set; }  }  public partial class Post  {    /// <summary>    /// 随笔的主键id    /// </summary>    public int PostId { get; set; }    // 随笔的标题    public string PostTitle { get; set; }    /// <summary>    /// 操作人    /// </summary>    public int BlogUserId { get; set; }    /// <summary>    /// 延迟加载博客用户    /// </summary>    public virtual BlogUser BlogUser { get; set; }  }

定义了两个实体,功能很简单,记录每个用户的随笔。 BlogUser 博客用户表 Post 随笔表

三、创建DbContext

 

public class BlogDbContext : DbContext, IDisposable {    public BlogDbContext()      : base()    { }    //实体集合    public IDbSet<BlogUser> BlogUsers { get; set; }    public IDbSet<Post> Posts { get; set; }}

也很简单,就把两个实体加入进来

以上三步最初级的功能就完成了。

四、演示 

public ActionResult Index()    {      var  db= new BlogDbContext();      //向数据库添加记录      var blogUser = new BlogUser() { BlogUserId = 1, BlogName = "STONE" };      db.BlogUsers.Add(blogUser);      var post = new Post()      {        PostId = 1,        PostTitle = "代码改变世界",        BlogUserId = 1      };      db.Posts.Add(post);      //保存记录,返回受影响的行数      int recordsAffected = db.SaveChanges();      return View(db.Posts.ToList());    }

db.BlogUsers.Add(mode); 就是增加一条博客账号信息。然后把信息显示出来

页面的代码

<table border="1">      <tr>        <td>          发布人姓名        </td>        <td>          随笔标题        </td>      </tr>      @foreach (var item in Model)      {        <tr>          <td>@item.BlogUser.BlogName</td>          <td>@item.PostTitle</td>        </tr>      }</table>

前端运行后的效果

image_thumb

在查看数据库,已经自动创建了两张表

image_thumb1

image_thumb2

在看看主外键关系也已经创建好了。

 

 

以上都是最最基础的东西,自己先动手做一次,至于里面的所有细节,后面的将继续讲解

第一次发布这个格式还不太会调整

 

 

以最简单的方式让大家学会EF