整个文章我都会用最简单,最容易让人理解的方式给大家分享和共同学习。(由于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 = , BlogName = "STONE" };
db.BlogUsers.Add(blogUser);
var post = new Post()
{
PostId = ,
PostTitle = "代码改变世界",
BlogUserId =
};
db.Posts.Add(post);
//保存记录,返回受影响的行数
int recordsAffected = db.SaveChanges();
return View(db.Posts.ToList()); }

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

页面的代码

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

前端运行后的效果

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

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

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

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

大家也可以加入QQ群进行交流(435498053)。

作者:STONE刘先生 出处:http://www.cnblogs.com/liupeng/

本文版权归作者和博客园共有,欢迎转载。未经作者同意下,必须在文章页面明显标出原文链接及作者,否则保留追究法律责任的权利。
如果您认为这篇文章还不错或者有所收获,可以点击右下角的【推荐】按钮,因为你的支持是我继续写作,分享的最大动力!

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

一步一步学EF系列一【最简单的一个实例】的更多相关文章

  1. 一步一步学EF系列【6、IOC 之AutoFac】

    前言 之前的前5篇作为EF方面的基础篇,后面我们将使用MVC+EF 并且使用IOC ,Repository,UnitOfWork,DbContext来整体来学习.因为后面要用到IOC,所以本篇先单独先 ...

  2. 一步一步学EF系列【4、升级篇 实体与数据库的映射】live writer真坑,第4次补发

    前言 之前的几篇文章,被推荐到首页后,又被博客园下了,原因内容太少,那我要写多点呢,还是就按照这种频率进行写呢?本身我的意图这个系列就是想已最简单最容易理解的方式进行,每篇内容也不要太多,这样初学者容 ...

  3. 一步一步学EF系列【5、升级篇 实体与数据库的映射】live writer真坑,第4次补发

    前言 之前的几篇文章,被推荐到首页后,又被博客园下了,原因内容太少,那我要写多点呢,还是就按照这种频率进行写呢?本身我的意图这个系列就是想已最简单最容易理解的方式进行,每篇内容也不要太多,这样初学者容 ...

  4. 一步一步学EF系列3【升级篇 实体与数据库的映射】

    之前的三张为基础篇,如果不考虑架构问题,做一般的小程序,以足够用了.基本的增删改查也都有了.但是作为学习显然是不够的.通过之前三章的学习,有没有发现这样写有什么问题,有没有觉得繁琐的?可能有人会说,之 ...

  5. 一步一步学EF系列四【升级篇 实体与数据库的映射】

    之前的三张为基础篇,如果不考虑架构问题,做一般的小程序,以足够用了.基本的增删改查也都有了.但是作为学习显然是不够的.通过之前三章的学习,有没有发现这样写有什么问题,有没有觉得繁琐的?可能有人会说,之 ...

  6. 一步一步学EF系列 【7、结合IOC ,Repository,UnitOfWork来完成框架的搭建】

    前言 距离上一篇已经有段时间了,最近这段时间赶上新项目开发,一直没有时间来写.之前的几篇文章,主要把EF的基础都讲了一遍,这批文章就来个实战篇. 个人在学习过程中参考博客: Entity Framew ...

  7. 一步一步学EF系列2【最简单的一个实例】

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

  8. 一步一步学EF系列三【数据迁移】

    我们每篇的内容都不多,所以希望在学习的过程中最后能亲自敲一下代码 这样更有利于掌握. 我们现在接着上篇的例子,我们现在给随便的表增加一个字段 CreateTime 创建日期 运行一下 看看会怎么样 修 ...

  9. 一步一步学EF系列1【Fluent API的方式来处理实体与数据表之间的映射关系】

    EF里面的默认配置有两个方法,一个是用Data Annotations(在命名空间System.ComponentModel.DataAnnotations;),直接作用于类的属性上面,还有一个就是F ...

随机推荐

  1. HTML邮件注意事项(转)

    1.全局规则之一,不要写<style>标签.不要写class,所有CSS都用style属性,什么元素需要什么样式就用style写内联的CSS. 2.全局规则之二,少用图片,邮箱不会过滤你的 ...

  2. odoo 在原有工作流中添加审批流

    odoo 在原有工作流中添加审批流 步骤: 1.加入所需的工作流节点以及相连的线(即所添加的审批流),代码如下: <?xml version="1.0" encoding=& ...

  3. Laravel5.1 关联模型之后操作

    之前写过关于模型关联的笔记,但是模型关联好后的一些使用没有介绍,今天补上 1 写入关联模型 1.1 使用Save方法(一对多) 我们准备了两个模型:Post和Comment. 它们的关系是一对多关系. ...

  4. 1-2、superset国际化

    最近由于工作需要研究开源可视化项目superset,由于其国际化做不怎么好,故而记录下国际化的过程,本篇本着『授人以鱼不如授人以渔』的原则,只叙述国际化的过程及方法,不提供直接的国际化文件. 为了方便 ...

  5. 让iOS应用支持不同版本的系统与设备

    本文转载至  http://blog.csdn.net/pucker/article/details/11980811 最近一直在做app的iOS 6和7的同时适配工作,所以在此介绍一下系统与设备的兼 ...

  6. 三、Gradle初级教程——Gradle除了签名打包还能配置jar包

    1.gradle概念 构建工具,Groovy,Java. 2.gradle配置jar包,和libs文件夹导入jar包的区别 到此,还是这种方法导入JAR包比较方便.每次更新JAR包,只需要修改版本号就 ...

  7. 170330、Spring中你不知道的注入方式

    前言 在Spring配置文件中使用XML文件进行配置,实际上是让Spring执行了相应的代码,例如: 使用<bean>元素,实际上是让Spring执行无参或有参构造器 使用<prop ...

  8. SpringCloud--注册中心Eureka

    Eureka的服务治理设计中,所有节点即是服务提供方,也是服务消费方. Eureka Server的高可用:就是将自己作为服务向其他服务注册中心注册自己,形成一组互相注册的服务注册中心,实现服务清单的 ...

  9. 2017 Multi-University Training Contest - Team 3——HDU6063 RXD and math

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6063 题目意思:字面意思,给出n,k,算出这个式子的答案. 思路:比赛的时候是打表找规律过了,赛后仔细 ...

  10. python 中几个层次的中文编码.md

    转自:[http://swj.me/] 介绍 一直不太喜欢使用命令行,所以去年年底的技术创新中,使用TkInter来开发小工具.结果花费了大量的时间来学习TkInter ui的使用. 最近想整理该工具 ...