在上篇博客我们写到,此软件的数据库连接我们使用的是EF框架,code first模式下,

通过模型类,在创建controller的时候直接生成数据库,完成数据库的连接,与操作。

在使用EF框架之前,我们需要写好模型类。然后在创建controller。

此软件目前需要两个模型类,在之前的博客中,我们已经设计,和完成了模型类,这时候

我们只需把代码拿过来就可以使用了。

两个模型类分别是:

GzScore,cs:

 public class GZScore{public int ID { get; set; }[DisplayName("队伍名称")]public string teamName { get; set; }[DisplayName("队员号码")]public string num { get; set; }[DisplayName("发球得分")]public int faqiu{ get; set; }[DisplayName("扣球得分")]public int  kouqiu { get; set; }[DisplayName("拦网得分")]public int langwang { get; set; }[DisplayName("助攻得分")]public int  zhugong{ get; set; }[DisplayName("队伍总分")]public int  totalscore { get; set; }}public class gDBContext : DbContext{public DbSet<GZScore> Students { get; set; }}

Player.cs:

 public class Players{public int ID { get; set; }[DisplayName("发球得分")]public int  faqiu { get; set; }[DisplayName("扣球得分")]public int kouqiu { get; set; }[DisplayName("拦网得分")]public int langwang { get; set; }[DisplayName("助攻得分")]public int zhugong { get; set; }[DisplayName("个人优点")]public string youdian { get; set; }[DisplayName("失误")]public string shiwu { get; set; }[DisplayName("总结")]public string zongjie { get; set; }}public class pDBContext : DbContext{public DbSet<Players> player { get; set; }}

当完成两个模型类的时候。我们需要对软件进行一下生成,右键单击项目,然后选择生成,

(也可以使用快捷键:Ctrl+shift+b来生成)然后观察右下角是否生成成功。

(此项操作很重要。不生成,在后续操作中可能会找不到模型类)


在完成模型类后,这时候我们就可以通过创建controller 来进行数据库的 连接了。

右键单击controller 文件夹,点击添加,添加控制器,控制器名字改写为:GuanZhongController

模板选择:包含读写操作的和视图的MVC,

模型类选择刚才创建的模型类:GZScore (VolleyBall.Models),数据上下文类选择:gDBContext (VolleyBall.Models)

具体操作如图:

填写完全后,点击添加

选择添加后,系统会自动帮我们生成,controller的视图控制代码;

具体代码如下:

public class GuanZhongController : Controller
{
private gDBContext db = new gDBContext();

//
// GET: /GuanZhong/

public ActionResult Index()
{
return View(db.Students.ToList());
}

//
// GET: /GuanZhong/Details/5

public ActionResult Details(int id = 0)
{
GZScore gzscore = db.Students.Find(id);
if (gzscore == null)
{
return HttpNotFound();
}
return View(gzscore);
}

//
// GET: /GuanZhong/Create

public ActionResult Create()
{
return View();
}

//
// POST: /GuanZhong/Create

[HttpPost]
public ActionResult Create(GZScore gzscore)
{
if (ModelState.IsValid)
{
db.Students.Add(gzscore);
db.SaveChanges();
return RedirectToAction("Index");
}

return View(gzscore);
}

//
// GET: /GuanZhong/Edit/5

public ActionResult Edit(int id = 0)
{
GZScore gzscore = db.Students.Find(id);
if (gzscore == null)
{
return HttpNotFound();
}
return View(gzscore);
}

//
// POST: /GuanZhong/Edit/5

[HttpPost]
public ActionResult Edit(GZScore gzscore)
{
if (ModelState.IsValid)
{
db.Entry(gzscore).State = EntityState.Modified;
db.SaveChanges();
return RedirectToAction("Index");
}
return View(gzscore);
}

//
// GET: /GuanZhong/Delete/5

public ActionResult Delete(int id = 0)
{
GZScore gzscore = db.Students.Find(id);
if (gzscore == null)
{
return HttpNotFound();
}
return View(gzscore);
}

//
// POST: /GuanZhong/Delete/5

[HttpPost, ActionName("Delete")]
public ActionResult DeleteConfirmed(int id)
{
GZScore gzscore = db.Students.Find(id);
db.Students.Remove(gzscore);
db.SaveChanges();
return RedirectToAction("Index");
}

protected override void Dispose(bool disposing)
{
db.Dispose();
base.Dispose(disposing);
}
}

当我们添加控制器后,系统还会自动给我们在视图问文件夹下生成该控制器

的视图文件夹,并产生五个对数据操作的视图;

如图文件夹的位置与文件:

我们可以清楚的看到系统为我们生成的文件。然后我们可以对这些文件做操作;

到这里,我们就使用EF框架,完成了通过模型类,然后创建controller,进行数据库的连接,与访问。

在使用EF框架的情况下,数据库的连接是非常方便和好用的。不过在某些方面,这个框架使用起来

也是很麻烦的,在这里我就不再多叙述。

完成了数据库的连接,软件的实现也快要完成了,在下篇博客中,将要对软件进行最后的完成,

并进行对软件的功能的使用与测试。这篇博客就到这里了。

转载于:https://www.cnblogs.com/Angel-szl/p/7055805.html

MVC实战之排球计分(六)—— 使用EF框架,创建Controller,生成数据库。相关推荐

  1. EF使用CodeFirst方式生成数据库技巧经验

    前言 EF已经发布很久了,也有越来越多的人在使用EF.如果你已经能够非常熟练的使用EF的功能,那么就不需要看了.本文意在将自己使用EF的方式记录下来备忘,也是为了给刚刚入门的同学一些指导.看完此文,你 ...

  2. C# 的EF框架怎么连接Oracle数据库

    安装odp.net ODP.NET你不需要安装Oracle,不需要配置oracle.key文件,不需要配置TnsNames.Ora文件 不需要配置环境变量:完全的傻瓜式的在没有安装oracle数据库或 ...

  3. 排球计分程序(三)—— 模型类的设计与实现

    通过EF框架设计模型生成数据图和表: 1)添加运动员模型类: namespace 排球计分程序.Models {     public class Ball     {         public ...

  4. EF框架你了解多少?

    [EF框架的认识] EF教程视频大全 一. EF简介 ADO.NET Entity Framework 以 Entity Data Model (EDM) 为主,将数据逻辑层切分为三块,分别为 Con ...

  5. EF框架-SQL语句 增加 删除

    在EF框架中,进行数据库的增删操作也是非常的方便. 增加 这里的添加一条信息 特别的简单,节省很多事情,直接通过使用EF的方法Add然后放入相应的实体对象就行 public int InsertCus ...

  6. Swift实战-豆瓣电台(六)视图跳转,传参及回跳

    原文:Swift实战-豆瓣电台(六)视图跳转,传参及回跳 youku观看地址:http://v.youku.com/v_show/id_XNzMxMzQ3MDcy.html 要点 在ChannelCo ...

  7. Cempi实战攻略(六)——如何截获到达的短消息

    Cempi实战攻略(六)--如何截获到达的短消息 By 吴春雷 QQ:819543772 EMAIL:wuchunlei@163.com 1.      MapiRule是什么?我从哪里能够得到它? ...

  8. ASP.NET MVC+EF框架+EasyUI实现权限管理(附源码)

    前言目录 前言:时间很快,已经快到春节的时间了,这段时间由于生病,博客基本没更新,所以今天写一下我们做的一个项目吧,是对权限的基本操作的操作,代码也就不怎么说了,直接上传源码和图片展示,下面我们直接进 ...

  9. ASP.NET MVC+EF框架+EasyUI实现权限管理系列(13)-权限设计

    原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(13)-权限设计 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇)   (1):框架搭建    (2):数据 ...

最新文章

  1. 怎么读取java文件,Java怎么读取文件
  2. SMO学习笔记(二)——还原(恢复)篇之完整恢复
  3. KeyWordHelper-关键字提取类(注:使用第三方组件DictSeg.dll)
  4. Cassandra 的数据存储结构——本质是SortedMapRowKey, SortedMapColumnKey, ColumnValue
  5. 关于fseek和文件ab+打开方式的问题
  6. 神策数据助力海通证券,精耕 4 大场景,全面强化数字化运营
  7. 不借助 Fiori client,直接在手机浏览器里调用 SAP UI5 BarcodeScanner 实现条形码扫描的可能性?
  8. 立即表达式的多种写法与注意点以及in操作符的作用
  9. Cocos2d-x一张小背景重复贴图充满整个屏幕
  10. 小D课堂 - 零基础入门SpringBoot2.X到实战_第4节 Springboot2.0单元测试进阶实战和自定义异常处理_18、SpringBoot测试进阶高级篇之MockMvc讲解...
  11. aspectjweaver:关于Spring注解AOP的注意点
  12. JAVA一个汉字占多少字节,一个字母占多少字节
  13. java的duplicate用法_Java ByteBuffer duplicate()用法及代码示例
  14. ubuntu 配置登录失败次数限制
  15. width mismatch when connecting input pin '/processing system 7_0/irq_f2p'(2) to net 'xlconcat_0_dout
  16. 微信小程序animation
  17. PHP修改图片上的文字,怎么用ps改图片上的字
  18. 【FFmpeg学习】H264 视频码流分析
  19. 电信运营商工程项目管理
  20. Lightroom人像磨皮滤镜插件portraiture Mac版

热门文章

  1. 前端遇到瓶颈怎么办?我来告诉你
  2. 话题:什么是前端工程化?
  3. 【C语言】在线OJ题 BC72-BC87-牛客网编程初学者入门训练
  4. mysql没有实体框架_NET实体框架数据库更新未在MySQL数据库中创...
  5. Java教程:Java String字符串和整型int的相互转换
  6. c if标签怎么用android,android – 使用NDK将YUV解码为C/C++中的RGB
  7. lua 差值 日期_lua时间戳和日期转换及踩坑
  8. chart控件做实时曲线显示_「Qt」利用QChart实现实时动态的曲线数据展示(进化版)
  9. python的else_Python3 if...elseif...else语句
  10. 计算机硬盘驱动器越大,计算机基础知识1.3摘要.doc