.NET使用DAO.NET实体类模型操作数据库

一、新建项目

打开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("没有此用户");
            }
        }

原文地址:https://www.cnblogs.com/dichuan/p/8178869.html

时间: 2024-09-28 02:35:36

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

MyBatis逆向工程,自动生成dao、实体类、mapper文件

利用mybatis generator 自动生成生成dao.实体类.mapper文件这里介绍两种方法:1.独立的文件夹的方式,脱离开发工具2.基于开发工具的方式(Eclipse)1.独立的文件夹的方式,脱离开发工具基本步骤:(方法有多种,这里的方法是脱离项目工程,利用命令行建立文件.后续可以按需复制进工程) 1.下载相应工具 2.依据相应数据库导入相应数据库连接jar包 3.编写generatorConfig.xml文件 4.命令行模式,进入lib文件夹 5.输入:java -jar mybat

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

好久没写了,都忘记博客了,趁着现在还在公司,写的东西是经过验证的,不是在家凭记忆力写的,正确率有保障,就说说最近遇到的一件事情吧. 以前一直用的oracle数据库,这次项目我负责的模块所在的系统是用的mysql数据库,结果当初建表时候,字段什么的全靠百度,实在是英语不行,然后有个字段叫usage,是mysql数据库的关键字,当时自己测试时候就发现了,但是想着我只是sql语句,加下``,一样可以用,所以就没引起重视. 结果一期已经上线了,现在对这个表要进行其他的维护,才发现用hibernate直接

0913 完整修改,删除-实体类-数据操作类

<完整修改删除> 昨天我们使用c#访问数据库会有很多弊端,如果数据库中没有这一条信息也会返回删除成功 今天完整修改删除就会克服这个困难 第一步 需要先查询 #region 查询                Console.WriteLine("学号" + "\t" + "姓名" + "\t" + "性别" + "\t" + "    " + "

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

1.首先新建 Asp.Net Core WebApi 项目 2.添加一下引用 : 2.1   Pomelo.EntityFrameworkCore.MySql(我用的Mysql 根据自己情况引用就行) 2.2  Microsoft.EntityFrameworkCore 2.3 Microsoft.EntityFrameworkCore.Design 3.使项目支持dotnet ef 工具以使用Migrations 3.1 手动修改csproj文件(手动添加是因为在nuget添加Microsof

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

           这篇文章主要介绍了Mybatis中实体类属性与数据列表间映射方法介绍,一共四种方法方法,供大家参考.         Mybatis不像Hibernate中那么自动化,通过@Column注解或者直接使用实体类的属性名作为数据列名,而是需要自己指定实体类属性和数据表中列名之间的映射关系,这一点让用惯了Hibernate的人很不习惯,所幸经过探索找到了建立映射关系的几种办法,其中总也有比较简单的. 首先定义一个实体类User,如下: public class User { pr

hibernate映射实体类查询时数据库空字段赋值给实体类报错的问题

因为一直报实体类空异常,去网上查了资料只查到了并没有查到数据库空值时不给实体类赋值的属性,只有这两个属性 这两个属性时设置 实体类有空字段插入或更新 数据库时空属性为默认值 异常 org.hibernate.InvalidMappingException: Could not parse mapping document from resource cn/pojo/EmpDao.xml at org.hibernate.cfg.Configuration.addResource(Configur

关于mybatis中的实体类属性与数据库中的列名不一致的两种解决方法

1.我们都知道,在mybatis中写实体类的时候,是按照数据库中的列名来给实体类定义属性的,举个例子: public class User implements Serializable { private Integer id; private String username; private String address; private String sex; private Date birthday; } 2.但是,如果我们在定义实体类的时候,实体类中的属性与数据库列名不一致呢?比如:

使用MyBatis Generator自动生成DAO以及实体类

generatorConfig.xml文件: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "http://mybatis.org/dtd/mybatis-generator-conf

学习MVC之租房网站(三)-编写实体类并创建数据库

在上一篇<学习MVC之租房网站(二)-框架搭建及准备工作>中,搭建好了项目框架,并配置了EF.Log4Net和进程外Session.接下来会编写Eneity类并采用CodeFirst的方式创建数据库. 一.数据库表结构举例 1. 在按照CodeFirst方式编写Entity类之前,仍然是需要先搞清楚数据库的表结构.首先肯定会有用户.管理员.角色.权限等相关的表,然后针对租房的特殊场景,还有房屋.房屋家电配置.房子所在的地址包括城市和区域等. 2. 这里面有两张表比较特殊,T_Settings和