mvc如今火的不行,我今天就来介绍一个MVC5与EF6开发的实际的入门实例,因为EF6默认是Code First的,所以我今天也就用EF6 的Code First来做一个简单的实例,为了让实例显得简单,这里面就用一个表,用来展示一个表的记录,model和dal也都在一个项目中。下面是详细步骤:

1、创建一个mvc的项目

打开VS2013新建项目一个Web项目,框架选.NET Framewok4.5,项目名字为MiniProfilerDemo。如下图:

接下来在弹出的窗口中选择项目的模板为mvc,如下图:

2、添加安装EF框架依赖包到项目

选中刚才建的项目,右键弹出以下菜单:

点击“管理nuget程序包”在下面的界面点击“安装”EntityFramework 6.1

安装成功之后,会自动添加相关的dll引用到项目中。

3、添加一个Model

选中项目中的Models文件夹,添加一个Product类:

namespace MiniProfilerDemo.Models

{

public class Product

{

public int ID { get; set; }

public string Name { get; set; }

public decimal Price { get; set; }

public int Quantity { get; set; }

}

}

4、添加一个EF的上下文类

为项目添加一个EF的上下文类,用来做为访问数据库的公共类:

using MiniProfilerDemo.Models;

using System.Data.Entity;

namespace MiniProfilerDemo.DAL

{

public class EFDbContext:DbContext

{

public DbSet Products { get; set; }

}

}

在Web.config中加入一个数据库链接:

注意:上面的数据库链接字符串你要根据的自己的数据库来做相应的调整,这个数据库链接的结点名字为“EFDbContext”和上面建的EF的上下文类名字一样。在EF上下文类中没有指定结点名称、默认就是类名称与数据库链接配置结点名同名,当然你在实践中也可以不一样,但是这样你的EF的上下文类就要多加一个构造函数:

public EFDbContext(): base("数据库链接的结点名字")

{

}

5、创建一个展示Model类的Controller和视图

1、选中项目的Controller文件夹,添加一个名字为Product的Controller

using MiniProfilerDemo.DAL;

using System.linq;

using System.Web.Mvc;

namespace MiniProfilerDemo.Controllers

{

public class ProductController : Controller

{

public ActionResult Index()

{

using (EFDbContext db=new EFDbContext())

{

var m = db.Products.ToList();

return View(m);

}

}

}

}

2、把光标移动到上面的Action为Index方法的内,右键弹出菜单点击“添加视图”,在里面输入下面的内容:

@model List

@{

ViewBag.Title = "ProductList";

}

ProductList

IDNamePriceQuantity

@foreach (var item in Model)

{

@item.ID@item.Name@item.Price@item.Quantity

}

这个视图的绑定的model类型为强类型List,数据记录用了一个表格展示。

6、查看页面,运行结果

第一次运行页面,是没有数据,这是正常的,因为刚开始连数据库都还没有,运行的时候EF会根据之前配置的数据库链接和EF上下文,自动创建一个数据库和Model对应的表,如下图:

下面我们手动打开表Product,添加一些记录进去

再次刷新页面就有刚才添加的数据了,如下图:

mvc5 ef6 mysql code first 架构_跟蓝狐学MVC教程--MVC5与EF6 Code First 第一个入门完整实例教程...相关推荐

  1. pythoncookbook和流畅的python对比_为什么你学Python效率比别人慢?因为你没有这套完整的学习资料...

    以下资源免费获取方式! 关注!转发!私信"资料"即可免费领取! 入门书籍 1.<Python基础教程>(Beginning Python From Novice to ...

  2. mycat mysql好可用架构_想要学会MyCat高可用集群搭建,但是这些知识点却还玩不明白?...

    一.集群架构 1.MyCat实现读写分离架构 在我前面的文章, 我已经讲解过了通过MyCat来实现MySQL的读写分离, 从而完成MySQL集群的负载均衡 , 如下面的结构图: 但是以上架构存在问题 ...

  3. mysql的四层架构_分布式数据库服务器的四层架构

    分布式数据库服务器的四层架构: 访问层:接收访问信息并按负荷智能的分配给中转服务器,接受数据结果并返回客户端. 中转层:接收访问服务器发来的数据访问指令,从总储存服务器寻找数据分布所在的储存服务器,发 ...

  4. mysql数据库三层架构_数据库的三层架构

    三层模式体系结构和数据独立性 第1.3节中列出了数据库方法的4个重要特点,其中有以下3个特点:(1)程序与数据分离(程序-数据独立性和程序-操作独立性):(2)支持多用户视图:(3)使用编目存储数据库 ...

  5. python之路 mysql 博客园_教为学:Python学习之路(二):MySQLdb的几种安装方式,以及用Python测试连接MySql...

    教为学:Python学习之路(二):MySQLdb的几种安装方式,以及用Python测试连接MySql Easy_install安装MySQLdb 很简单,以至于我不晓得该怎么说.一句话. sodu ...

  6. mysql 命令as 使用_【翻译自mos文章】使用asmcmd命令在本地和远程asm实例之间拷贝as...

    使用asmcmd命令在本地和远程 asm 实例之间 拷贝asm file的方法 参考原文: How to Copy asm files between remote ASM instances usi ...

  7. CENTOS 7 踢用户_从零学ELK系列(三):Centos安装Docker(超详细图文教程)

    CSDN博客地址(关注,点赞) 人工智能推荐 GitHub(Star,Fork,Watch) [前言] 为了更加真实的模拟生产部署环境,不仅需要Linux环境支持,而且ELK需要在不同的机器上部署:再 ...

  8. coreldraw怎么画猴子_小猴头像简笔画【CDR11设计制作逼真的小猴头像实例教程】...

    CorelDraw是一款用来设计和制作矢量图形的软件,使用起来简单方便,成为很多设计人员的首爱.猴年马上就到了,让笔者带大家一起来绘制一个可爱的小猴头像吧!文章末尾提供.cdr文件供大家下载参考. 所 ...

  9. python用*做三角形_我刚学这个,怎么用python表示三角形成立【python数字三角形教程】...

    我刚学这个,怎么用python表示三角形成立 def Get_List(a,b,c): oList = [a,b,c] oList.sort() return oList a = raw_input( ...

  10. 登峰杯机器人成绩_合川中学学生荣获“登峰杯”机器人大赛第一名

    今日合川网讯 日前,第三届"登峰杯全国中学生学术科技创新大赛机器人竞赛"全国总决赛结果揭晓,合川中学高2020级陈怡兵.陈杰.陈帅.张紫怡.高文浩五位同学组成的团队在指导教师梁磊. ...

最新文章

  1. spl_autoload_register与autoload区别
  2. 二叉树的层序遍历 II
  3. ST17H26使用tea注意事项
  4. 面试官:前端跨页面通信,你知道哪些方法?
  5. 【最常用】两种java中的占位符的使用
  6. Nginx凭啥子并发数可以达到3w!
  7. 解决硬盘文件目录损坏且无法读取
  8. 强悍的 Linux —— 常用 shell
  9. ASP.NET与JS交互
  10. 网络是怎样连接的-IP与以太网的包收发操作(三)
  11. docker mysql 镜像 下载_docker mysql 镜像下载
  12. Hadoop | 初学基础原理
  13. 彻底搞懂瓦片地图拼接原理并附具体实现
  14. c++ 发邮件(含附件)
  15. Java-Spring-使用篇之快速入门
  16. Excel 转 vCard格式、CSV格式
  17. Spring三级缓存源码
  18. PTA|程序设计类实验辅助教学平台:基础编程题目集:编程题7-1
  19. java图像处理--形态学填充处理imfill
  20. ION-DTN报错Wrong profile for this SDR

热门文章

  1. android 原生控件,抽离Android原生控件的方法
  2. [转]Discuz 模板原理分析
  3. 「津津乐道播客」#342 编码人声:跟「老」程序员们聊聊编程的历史与未来
  4. 同位素的研究方法和技术
  5. DIV+CSS 二级菜单实现
  6. 砂糖橘文案:水果砂糖橘的文案,水果文案砂糖橘
  7. 2019 CSP-J 游记(CQ LNBS考场 的退役之战)
  8. 淘宝/天猫API:item_search_similar-搜索相似的商品
  9. SCI 论文过去时和现在时 时态的使用
  10. Visual Studio 2022自定义(透明)主题和壁纸完整版