一、新建项目

打开vs2017,新建一个项目,命名为orm1

二、新建数据库

打开 SqlServer数据库,新建数据库 orm1,并新建表 student 。

三、新建 ADO.NET 实体数据模型

这里点击 新建连接,新建数据库连接。其实服务器名输入 . 代表本地服务器,身份验证选择默认的Windows身份认证。

选择我们的创建好的数据库 orm1 。

记住这里的连接名 orm1Entities ,后面写代码需要用到。

这里记得勾选表

点击完成就OK了,有可能会弹出下面的警告,点确定就好了。

最后出现下面这个视图,至此,创建 DAO.NET 实体类型模型成功。

现在点 VS 上面的生成,点重新生成项目。成功后控制台输入:

四、新建 aspx 文件

新建 aspx 文件 webform1.aspx

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="orm1.WebForm1" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
学号:<asp:TextBox ID="sid" runat="server"></asp:TextBox>
</div>
<div>
姓名:<asp:TextBox ID="sname" runat="server"></asp:TextBox>
</div>
<div>
年龄:<asp:TextBox ID="sage" runat="server"></asp:TextBox>
</div>
<div>
<asp:Button ID="Add" runat="server" Text="新增" OnClick="Add_Click" />
<asp:Button ID="Select" runat="server" Text="查询" OnClick="Select_Click" />
<asp:Button ID="Delete" runat="server" Text="删除" OnClick="Delete_Click" />
<asp:Button ID="Update" runat="server" Text="修改" OnClick="Update_Click" />
</div> <div>
<asp:GridView ID="GridView1" runat="server"></asp:GridView>
</div>
</form>
</body>
</html>

那么,现在我们就可以在 cs 文件写利用 Dao.NET 的实体类型模型操作数据库的代码了。

1. 显示所有

        void ShowAll()
{
var db = new orm1Entities();
GridView1.DataSource = db.Student.ToList();
GridView1.DataBind();
}

还记得 orm1Entities 吗?在新建实体类模型的时候是不是见过?

2. 查找数据

        protected void Select_Click(object sender, EventArgs e)
{
var db = new orm1Entities();
var item = db.Student.Where(M => M.sid == sid.Text).ToList();
GridView1.DataSource = item;
GridView1.DataBind();
}

其中,where中的M是任意字符。

3. 新增数据

        protected void Add_Click(object sender, EventArgs e)
{
var db = new orm1Entities();
var item = new Student
{
sid = sid.Text,
sname = sname.Text,
sage = int.Parse(sage.Text)
};
db.Student.Add(item);
db.SaveChanges();
ShowAll();
}

4. 删除数据

        protected void Delete_Click(object sender, EventArgs e)
{
var db = new orm1Entities();
var item = db.Student.Where(M => M.sid == sid.Text).FirstOrDefault();
if (item != null)
{
db.Student.Remove(item);
db.SaveChanges();
ShowAll();
}
else
{
Response.Write("没有此用户");
} }

5. 修改数据

        protected void Update_Click(object sender, EventArgs e)
{
var db = new orm1Entities();
var item = db.Student.Where(M => M.sid == sid.Text).FirstOrDefault();
if (item != null)
{
item.sname = sname.Text;
item.sage = int.Parse(sage.Text);
db.SaveChanges();
ShowAll();
}
else
{
Response.Write("没有此用户");
}
}

.NET使用DAO.NET实体类模型操作数据库的更多相关文章

  1. Hibernate_day02--课程安排_主键生成策略_对实体类crud操作_实体类对象状态

    Hibernate_day02 上节内容 今天内容 实体类编写规则 Hibernate主键生成策略 实体类操作 对实体类crud操作 添加操作 根据id查询 修改操作 删除操作 实体类对象状态(概念) ...

  2. 关于mysql下hibernate实体类字段与数据库关键字冲突的问题

    好久没写了,都忘记博客了,趁着现在还在公司,写的东西是经过验证的,不是在家凭记忆力写的,正确率有保障,就说说最近遇到的一件事情吧. 以前一直用的oracle数据库,这次项目我负责的模块所在的系统是用的 ...

  3. Django中的模型(操作数据库)

    目录 Django配置连接数据库 在Django中操作数据库 原生SQL语句操作数据库 ORM模型操作数据库 增删改查 后台管理 使用后台管理数据库 模型是数据唯一而且准确的信息来源.它包含您正在储存 ...

  4. Mybatis实体类属性与数据库字段不一致解决办法

    例如:实体类  String userName     数据库:name 解决办法一: 通过给字段加别名,别名写成实体类属性一 eg:select name userName from student ...

  5. Qt 学习之路 2(56):使用模型操作数据库

    Qt 学习之路 2(56):使用模型操作数据库 (okgogo: skip) 豆子 2013年6月20日 Qt 学习之路 2 13条评论 前一章我们使用 SQL 语句完成了对数据库的常规操作,包括简单 ...

  6. 重学 Java 设计模式:实战代理模式「模拟mybatis-spring中定义DAO接口,使用代理类方式操作数据库原理实现场景」

    作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 难以跨越的瓶颈期,把你拿捏滴死死的! 编程开发学习过程中遇到的瓶颈期,往往是由于看不 ...

  7. Mybatis中实体类属性与数据库列表间映射方法介绍

               这篇文章主要介绍了Mybatis中实体类属性与数据列表间映射方法介绍,一共四种方法方法,供大家参考.         Mybatis不像Hibernate中那么自动化,通过@Co ...

  8. EntityFrameworkCore 根据实体类自动创建数据库

    1.首先新建 Asp.Net Core WebApi 项目 2.添加一下引用 : 2.1   Pomelo.EntityFrameworkCore.MySql(我用的Mysql 根据自己情况引用就行) ...

  9. IntelliJ IDEA 2017版 spring-boot 实现jpa基本部署,通过实体类自动建立数据库

    一.添加Spring Boot JPA-Hibernate步骤 1.在pom.xml添加mysql,spring-data-jpa依赖      2.在application.properties文件 ...

随机推荐

  1. A:点排序-poj

    A:点排序 总时间限制:  1000ms 内存限制:  65536kB 描述 给定一个点的坐标(x, y),在输入的n个点中,依次计算这些点到指定点的距离,并按照距离进行从小到大排序,并且输出点的坐标 ...

  2. continue,break以及加上标签的使用(goto思路)

    代码例子在java编程思想70-73页.这里只是想做做总结 java中需要用到标签的唯一理由就是因为由循环嵌套的存在,而且想从多层嵌套循环中break或者continue. 因此,标签只能放在循环前面 ...

  3. Dashboard集群

    #Dashboard集群 openstack pike 部署 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html ##.Dashboard集群 #####在 ...

  4. gitlab一键安装+配置(备份+LADP认证)

    gitlab一键安装+配置(备份+LADP认证) #gitlab一键安装 #centos6 mini, GitLab社区版 #参考官方最新文档 https://www.gitlab.com.cn/in ...

  5. python通过webservice接口实现配置下发

    项目上要开发一个小工具,通过webservice接口实现配置下发,考虑到python的第三方库对soap的良好支持,果断决定用python来完成这一使命. Python的支持webservice的第三 ...

  6. 从Windows迁移SQL Server到Linux

    前一篇博客关于SQL Server on Linux的安装,地址:http://www.cnblogs.com/fishparadise/p/8057650.html,现在测试把Windows平台下的 ...

  7. ubuntu16.04 Qt5.8 如何使用opecv3.2

    关于opencv3.2的编译有一大堆教程.可自寻查看.在Qt中使用opencv需要在pro文件中添加 相应的头文件和 动态链接库.如下 INCLUDEPATH += . INCLUDEPATH += ...

  8. Server SQL 2008 习题

    [序言:学期末了,整理了自己这个学期学习数据库做的练习题,也是让自己复习了一遍.有错误的话希望大佬能够批评指正,不胜感激] 一.修改数据库 (1)给db_temp数据库添加一个数据文件文件db_tem ...

  9. 表单的自动到json与urlstr

    将表单序列化成json,将json转换成字符串 //将表单序列化成json 字符串 $.fn.serializeObject = function(){ var obj = {}; var count ...

  10. Create-React-App创建antd-mobile开发环境(学习中的记录)

    (参考别人结合自己的整理得出,若有错误请大神指出) Facebook 官方推出Create-React-App脚手架,基本可以零配置搭建基于webpack的React开发环境,内置了热更新等功能. 详 ...