一、显示信息
、Models(模板)
private MyDBDataContext _context = new MyDBDataContext(); //定义一个变量取出所有数据
public List<Student> Select()
{
return _context.Student.ToList();//把所有数据都显示出来,全部查询
}
、Controllers(控制器)
public ActionResult Index()//显示信息
{
ViewBag.data = new StudentBF().Select();//调用查询方法将获取到的信息存到ViewBag.data里面
return View();
}
、Views(视图)
@using 数据库增删改查_Razor_.Models;
@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<style>
.trhead
{
background-color:#0094ff;
text-align:center;
}
.trrow
{
background-color:#FFFFcc;
text-align:center;
}
</style>
</head>
<body>
<div>
<table border="" width="100%" cellpadding="" cellspacing="">
<tr class="trhead">
<td>学号</td>
<td>姓名</td>
<td>操作</td>
</tr>
@{
List<Student> list=ViewBag.data as List<Student>;//将数据取出来并进行强制转换
foreach (Student data in list)
{
<tr class="trrow">
<td>@data.Sno </td>
<td>@data.Sname </td>
@* <td><a href="/Home/Details/@data.Sno"><img src="xiangxi.png"></a>&nbsp;&nbsp;<a href="/Home/Edit/@data.Sno"><img src="xiugai.png"></a></td>*@ </tr>
}
}
</table>
</div>
</body>
</html>

效果图:

二、详细信息
、Models(模板)
public Student Select(string sno) //详细查询
{
var query = _context.Student.Where(P=>P.Sno==sno);//找到P这个对象里输入的学号和里面的学号相同的一个人
if(query.Count()>)
{
return query.First();
}
else
{
return null;
}
}
、Controllers(控制器)
public ActionResult Details(string id)//详细信息 括号里面必须是id
{
ViewBag.data = new StudentBF().Select(id);//调用详细信息方法将获取到的信息存到ViewBag.data里面
return View();
}
、Views(视图)
@using 数据库增删改查_Razor_.Models;
@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Details</title>
<style>
.trhead
{
background-color:#0094ff;
text-align:center;
}
.trrow
{
background-color:#FFFFcc;
text-align:center;
}
</style>
</head>
<body>
<div>
<table border="" width="100%" cellpadding="" cellspacing="" class="trrow">
@{
Student data=ViewBag.data;
<tr >
<td>学号</td>
<td>@data.Sno</td>
</tr> <tr>
<td>姓名</td>
<td>@data.Sname</td>
</tr> <tr>
<td>性别</td>
<td>@data.Ssex</td>
</tr> <tr>
<td>生日</td>
<td>@data.Sbirthday</td>
</tr> <tr>
<td>班级</td>
<td>@data.Class</td>
</tr>
}
</table>
</div>
</body>
</html>

效果图:

三、修改信息。
、Models(模板)
public void Update(string sno,string sname,string sex,string birthday,string Class)//修改
{
var query=_context.Student.Where(P=>P.Sno==sno);
if(query.Count()>)
{
Student data = query.First();
data.Sname = sname;
data.Ssex = sex;
data.Sbirthday = birthday;
data.Class = Class;
}
_context.SubmitChanges(); }
、 Controllers(控制器)
public ActionResult Edit(string id)//修改前的编辑
{
ViewBag.data = new StudentBF().Select(id);//将要修改的人的信息查询出来
ViewBag.banji = new StudentBF().Select();//将所有的班级信息显示出来
return View();
}
public ActionResult Update(string sno,string sname,string sex,string birthday,string class1 )//修改前的编辑
{
new StudentBF().Update(sno,sname,sex,birthday,class1); //将数据扔进去进行修改
return RedirectToAction("Index");//返回动作到Index
} 、Views(视图)
@using 数据库增删改查_Razor_.Models;
@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Edit</title>
</head>
<body>
<div>
<form name="f1" id="f1" action="/Home/Update" method="post">
@{
Student data=ViewBag.data;
List<Student> banji=ViewBag.banji;
<div>
学号:<input id="Text1" name="sno" type="text" value="@data.Sno" readonly="readonly" /><br/>
姓名:<input id="Text2" name="sname" type="text" value="@data.Sname" /><br/>
性别:<input id="Radio1" name="sex" type="radio" value="男" @(data.Ssex=="男"?"checked=checked":"") />男<input id="Radio2" type="radio" name="sex" value="女" @(data.Ssex=="女"?"checked=checked":"" )/>女<br/>
生日:<input id="Text3" type="text" name="birthday" value="@data.Sbirthday" /><br/>
班级:<select id="Select1" name="class1">
@{
foreach(Student x in banji )
{
if(data.Class==x.Class)
{
<option selected="selected" value="@x.Class">@data.Class</option>
}
else
{
<option value="@x.Class">@data.Class</option>
}
}
} </select>
</div>
}
<input id="Submit1" type="submit" value="更新" />
</form>
</div>
</body>
</html>

效果图:

四、删除
、Models(模板)
public ActionResult Delete(string id)//删除
{
new StudentBF().Delete(id);//调用方法删除
return RedirectToAction("Index");//返回到动作Index
}
、Controllers(控制器)
public ActionResult Delete(string id)//删除
{
new StudentBF().Delete(id);//调用方法删除
return RedirectToAction("Index");//返回到动作Index
}
、Views(视图)
Null

效果图:

五、增加
、Models(模板)
public void Insert(string sno, string sname, string sex, string birthday, string Class)//增加
{
Student data = new Student();//造一个新的学生(Student)
data.Sno = sno;
data.Sname = sname;
data.Ssex = sex;
data.Sbirthday = birthday;
data.Class = Class;
_context.Student.InsertOnSubmit(data); //将data增加到Student表里去
_context.SubmitChanges(); }
、Controllers(控制器)
public ActionResult Add()//增加
{
return View();
}
public ActionResult Insert(string sno,string sname,string sex,string birthday,string class1)//增加
{
new StudentBF().Insert(sno,sname,sex,birthday,class1);//将传过来的参数全部扔进去
return RedirectToAction("Index");//返回到动作Index
} 、Views(Add)(视图)
@using 数据库增删改查_Razor_.Models;
@{
Layout = null;
} <!DOCTYPE html> <html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Add</title>
</head>
<body>
<div>
<form name="f1" id="f1" action="/Home/Insert" method="post">
学号:<input id="Text1" name="sno" type="text" value="" /><br/>
姓名:<input id="Text2" name="sname" type="text" value="" /><br/>
性别:<input id="Radio1" name="sex" type="radio" value="男" checked="checked" />男<input id="Radio2" type="radio" name="sex" value="女" )/>女<br/>
生日:<input id="Text3" type="text" name="birthday" value="" /><br/>
班级:<input id="Text14" type="text" name="class1" /> <input id="Submit1" type="submit" value="添加" />
</form>
</div>
</body>
</html>

效果图:

→→→

注意:下拉表出来的班级是新造了个班级表 (Add)

效果如下图:

如果是修改的话,班级里显示值需要if else判断, 如果学生的班级和班级表的班级对应起来,则默认学生的班级被选中,否则只需要将其他的班级添加上就行了,不需要选中

效果如下图:

MVC——数据库增删改查(Razor)的更多相关文章

  1. MVC——数据库增删改查(Razor)——Html语法

    一.显示界面 .Models(模板) private MyDBDataContext _context = new MyDBDataContext(); public List<Info> ...

  2. MVC——数据库增删改查(aspx)

    MVC: V(View) :视图→就是页面的模板 C(Control): 控制器→客户主要面对的就是控制器, M(Model):模板→在模板里面主要就是写关于数据库的各种增删改查的方法 它们之间的关系 ...

  3. 分享一个自己写的MVC+EF “增删改查” 无刷新分页程序

    分享一个自己写的MVC+EF “增删改查” 无刷新分页程序 一.项目之前得添加几个组件artDialog.MVCPager.kindeditor-4.0.先上几个效果图.      1.首先建立一个数 ...

  4. 【ASP.NET MVC系列】浅谈jqGrid 在ASP.NET MVC中增删改查

    ASP.NET MVC系列文章 [01]浅谈Google Chrome浏览器(理论篇) [02]浅谈Google Chrome浏览器(操作篇)(上) [03]浅谈Google Chrome浏览器(操作 ...

  5. Yii2.0高级框架数据库增删改查的一些操作(转)

    yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 --------------------------- ...

  6. 2. MongoDB基本操作 —— 用Mongo.exe操作数据库增删改查

    一.开篇 传统的关系数据库一般由数据库(database).表(table).记录(record)三个层次概念组成,MongoDB是由数据库(database).集合(collection).文档对象 ...

  7. go——beego的数据库增删改查

    一直都不理解使用go语言的时候,为什么还要自己去装beego,以为使用go便可以解决所有的问题,结果在朋友的点拨下,才意识到: go与beego的关系就好比是nodejs与thinkjs的关系,因此也 ...

  8. (转)SQLite数据库增删改查操作

    原文:http://www.cnblogs.com/linjiqin/archive/2011/05/26/2059182.html SQLite数据库增删改查操作 一.使用嵌入式关系型SQLite数 ...

  9. Yii2.0高级框架数据库增删改查的一些操作

    yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 --------------------------- ...

随机推荐

  1. Mysql 的变量

    变量 MySQL是一门编程语言.所以存在变量.流程控制.函数.存储过程.触发器 MySQL分系统变量,与自定义变量 MySQL的某些功能是通过系统变量来实现的.例如:autocommit 查看系统变量 ...

  2. HDU 4422 The Little Girl who Picks Mushrooms(简单题)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4422 题目大意:小姑娘背着5个包去山上采蘑菇,每座山上只能用一个背包采集.三个小精灵会要她3个背包,其 ...

  3. 原子/Atomic操作

    原子/Atomic操作 一.什么是 原子/atom   这个术语用原子来表示不够准确,原子翻译自atom/atomic,其中atom在词典中的「词源/etymology」是: [Middle Engl ...

  4. 学习C++ Primer 的个人理解(零)

    由于自己看书之后经常容易忘记细节,所以写在博客上让我自己的思路更加清晰一些. 我的博客仅仅只是将书中的内容概括一下,有一些不好理解的部分我会用我自己理解的方式使用大白话写出来. 仅此而已.

  5. [翻译][MVC 5 + EF 6] 9:异步和存储过程

    原文:Async and Stored Procedures with the Entity Framework in an ASP.NET MVC Application 1.为什么使用异步代码: ...

  6. Apache的多路处理模块MPM:Prefork Worker Event

    如何确认当前apache使用哪种模式 通过/etc/init.d/httpd中的来确认系统apache的运行脚本路径 apachectl=/usr/sbin/apachectl httpd=${HTT ...

  7. 创建安全的ashx文件,ashx编译

    <%@ WebHandler Language="C#" Class="Handler2" %> using System; using Syste ...

  8. Node.js学习心得

    最近花了三四周的时间学习了Node.js ,感觉Node.js在学习过程中和我大学所学的专业方向.NET在学习方法上有好多的相似之处,下面就将我学习的心得体会以及参考的资料总结归纳如下,希望对于刚入门 ...

  9. JavaScript 判断用户输入的邮箱及手机格式是否正确

    JavaScript判断用户输入的邮箱格式是否正确.判断用户输入的手机号格式是否正确,下面有个不错的示例,感兴趣的朋友可以参考下. 复制代码代码如下: /*  * 功能:判断用户输入的邮箱格式是否正确 ...

  10. php class类的用法详细总结

    以下是对php中class类的用法进行了详细的总结介绍,需要的朋友可以过来参考下 一:结构和调用(实例化): class className{} ,调用:$obj = new className(); ...