第一步:建立ADO.net数据模型,一步步操作就行

第二步:画个简单的测试界面

第三步铺代码

using DevComponents.DotNetBar.SuperGrid;
using DevComponents.DotNetBar.SuperGrid.Style;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace ado增删改
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void StyleSPG()
{
GridPanel gpnl = SPG.PrimaryGrid;
gpnl.AllowRowInsert = false;
//gpnl.ColumnAutoSizeMode = ColumnAutoSizeMode.AllCells;//卡顿原因
gpnl.KeyboardEditMode = KeyboardEditMode.EditOnKeystroke;//编辑模式
gpnl.MouseEditMode = MouseEditMode.DoubleClick;
gpnl.GroupByRow.Visible = false;//手动分组显示
gpnl.ColumnHeader.FilterImageVisibility = ImageVisibility.Never;//列头筛选图标
gpnl.EnableRowFiltering = false;//筛选行行头不可用
gpnl.ImmediateResize = false;
gpnl.EnableCellMerging = false;//合并单元格
gpnl.GroupHeaderClickBehavior = GroupHeaderClickBehavior.ExpandCollapse;//分组单击行为
gpnl.ColumnHeaderClickBehavior = ColumnHeaderClickBehavior.Select;//列头单击行为
gpnl.EnableFiltering = true;
gpnl.EnableColumnFiltering = true;
gpnl.Filter.Visible = true;
gpnl.FilterMatchType = FilterMatchType.RegularExpressions;
gpnl.Filter.RowHeight = ;
gpnl.RowHeaderWidth = ;
gpnl.AllowRowHeaderResize = true;
gpnl.TopLeftHeaderSelectBehavior = TopLeftHeaderSelectBehavior.NoSelection; gpnl.AllowRowResize = true;//允许用户拖动行高 gpnl.DefaultVisualStyles.CellStyles.Default.AllowWrap = Tbool.True;//可自动换行
gpnl.DefaultVisualStyles.CellStyles.Selected.AllowWrap = Tbool.True;
gpnl.DefaultVisualStyles.CellStyles.Default.Font = new System.Drawing.Font("微软雅黑", );
gpnl.ShowGroupUnderline = false;//是否显示分组下划线 SPG.PrimaryGrid.ColumnAutoSizeMode = ColumnAutoSizeMode.AllCells;
GridColumn col = new GridColumn();
col = new GridColumn();
col.Name = "Q_Name";
col.HeaderText = "姓名";
col.EditorType = typeof(GridLabelXEditControl);
col.CellMergeMode = CellMergeMode.Horizontal;
col.AutoSizeMode = ColumnAutoSizeMode.AllCells;
SPG.PrimaryGrid.Columns.Add(col);
col = new GridColumn();
col.Name = "Q_Code";
col.HeaderText = "QQ号码";
col.EditorType = typeof(GridLabelXEditControl);
// col.FilterMatchType = FilterMatchType.RegularExpressions;
col.CellMergeMode = CellMergeMode.None;
col.AutoSizeMode = ColumnAutoSizeMode.Fill;
SPG.PrimaryGrid.Columns.Add(col);
col = new GridColumn();
col.Name = "DateTime";
col.HeaderText = "保存时间";
col.EditorType = typeof(GridLabelXEditControl);
// col.FilterMatchType = FilterMatchType.RegularExpressions;
col.CellMergeMode = CellMergeMode.None;
col.AutoSizeMode = ColumnAutoSizeMode.AllCells;
SPG.PrimaryGrid.Columns.Add(col);
col = new GridColumn();
col.Name = "id";
col.HeaderText = "id";
col.EditorType = typeof(GridLabelXEditControl);
// col.FilterMatchType = FilterMatchType.RegularExpressions;
col.CellMergeMode = CellMergeMode.None;
col.AutoSizeMode = ColumnAutoSizeMode.AllCells; SPG.PrimaryGrid.Columns.Add(col);
}
/// <summary>
/// 删除
/// </summary>
public void Del()
{
DB_ConfigEntities2 DBC = new DB_ConfigEntities2();
QQ_Mess user = new QQ_Mess();
user.id = int.Parse(TID.Text);
DBC.Entry<QQ_Mess>(user).State = System.Data.Entity.EntityState.Deleted;
DBC.SaveChanges(); }
/// <summary>
/// 查询
/// </summary>
public void EFSelectAll()
{
if(cb.Checked ==true)
{
DB_ConfigEntities2 DBC = new DB_ConfigEntities2();
SPG.PrimaryGrid.DataSource = DBC.QQ_Mess.ToList();
}else
{
QQ_Mess Qm = new QQ_Mess();
DB_ConfigEntities2 DBC = new DB_ConfigEntities2();
SPG.PrimaryGrid.DataSource = DBC.QQ_Mess.Where(u => u.Q_Name ==TTTT_Name.Text).ToList();
} }
private void Form1_Load(object sender, EventArgs e)
{
cb.Checked = true;
StyleSPG();
EFSelectAll();
}
/// <summary>
/// 添加
/// </summary>
public void EFadd()
{
DB_ConfigEntities2 DBC = new DB_ConfigEntities2();
QQ_Mess QM = new QQ_Mess();
QM.DateTime = DateTime.Parse( DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
QM.Q_Code = T_QQ.Text;
QM.Q_Name = T_Name.Text;
DBC.QQ_Mess.Add(QM);
DBC.SaveChanges();
} public void EFupdate()
{
DB_ConfigEntities2 DBC = new DB_ConfigEntities2();
QQ_Mess QM = new QQ_Mess();
QM.DateTime = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
QM.id = int.Parse(T1.Text.ToString());
QM.Q_Code = T3.Text.Trim();
QM.Q_Name = T2.Text.Trim();
DBC.Entry(QM).State = System.Data.Entity.EntityState.Modified;
DBC.SaveChanges(); }
private void btadd_Click(object sender, EventArgs e)
{
EFadd();
EFSelectAll();
} private void btselect_Click(object sender, EventArgs e)
{
EFSelectAll();
} private void btdel_Click(object sender, EventArgs e)
{
Del();
EFSelectAll();
} private void Update_Click(object sender, EventArgs e)
{
EFupdate();
EFSelectAll();
}
}
}

总结:新增

删除  注意:id为主键,不唯一

修改 id为主键,不唯一

查询

整表查询

条件查询

主键查询

ADO,net 实体数据模型增、删、改,浅谈的更多相关文章

  1. EF里单个实体的增查改删以及主从表关联数据的各种增删 改查

    本文目录 EF对单个实体的增查改删 增加单个实体 查询单个实体 修改单个实体 删除单个实体 EF里主从表关联数据的各种增删改查 增加(增加从表数据.增加主从表数据) 查询(根据主表找从表数据.根据从表 ...

  2. ADO.NET 增 删 改 查

    ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...

  3. 第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据

    第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据 ADO.NET 为什么要学习? 我们要搭建一个平台(Web/Winform ...

  4. C# ADO.NET (sql语句连接方式)(增,删,改)

    using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...

  5. ADO.NET实体数据模型使用探索1

    今天研究了下ADO.NET实体数据模型,想写个关于两张有外键关系的增改删查,以此来稍增加点难度. 编程环境:vs2010+sql2005 1.在SQL2005下建立三张表:学生信息表Student(S ...

  6. Model First:创建实体数据模型(ADO.NET 实体数据模型)

    Microsoft Entity Framework是一个对象关系映射工具(Object Relational Mapping ,O/RM)工具.它可以让你从一个数据库自动地生成数据接入层.实体框架免 ...

  7. Visual 2015创建新项,缺少ADO.NET 实体数据模型的解决方法

    现在的某度查资料真的很麻烦,突然我自身的VS2015创建EF的时候找不到 ADO.NET 实体数据模型,但是使用CodeFrist是可以生成数据表的.所有特别郁闷. 打开界面如下 某度半天,都没有查出 ...

  8. 好用的SQL TVP~~独家赠送[增-删-改-查]的例子

    以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化.  本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...

  9. iOS FMDB的使用(增,删,改,查,sqlite存取图片)

    iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...

随机推荐

  1. MintUI引入vue项目以及引入iconfont图标

    官网地址:http://mint-ui.github.io/#!/zh-cn 中文文档:http://mint-ui.github.io/docs/#/zh-cn2 示例展示:http://eleme ...

  2. (三)Cisco dhcp snooping实例1-单交换机(DHCP服务器和DHCP客户端位于同一VLAN)

    环境:cisco dhcp server和客户端都属于vlan27,dhcp server 接在交换机G0/1,客户端接在交换机的G0/2 cisco dhcp server相关配置 ip dhcp ...

  3. EXCEL复制可见单元格

    Excel筛选后,复制筛选后的单元格 1, 首先还是复制这一部分内容. 2, CTRL+G打开 "定位"窗口. 3, 在 "定位"窗口中选择"定位条件 ...

  4. [转]Windows内存堆内容整理总结

    在系统安全研究中,堆,是一个极其重要的内存区域以及研究的热点.堆,区别于栈区.全局数据区以及代码区,它的主要作用是允许程序在运行时动态地申请某个大小的内存空间.本文将从宏观到微观,简单梳理总结一下Wi ...

  5. 常见的SQL优化面试题

    1.在表中建立索引,优先考虑where.group by使用到的字段. 2.查询条件中,一定不要使用select *,因为会返回过多无用的字段会降低查询效率.应该使用具体的字段代替*,只返回使用到的字 ...

  6. c#怎么解决System.UnauthorizedAccessException异常

    https://blog.csdn.net/qq_38061677/article/details/81157116 代码: using System;namespace Project2048{ c ...

  7. python的super深入了解(转)

    1.python的继承以及调用父类成员 python子类调用父类成员有2种方法,分别是普通方法和super方法 假设Base是基类 class Base(object): def __init__(s ...

  8. RAID技术全解图解-RAID0、RAID1、RAID5、RAID100【转】

    图文并茂 RAID 技术全解 – RAID0.RAID1.RAID5.RAID100…… RAID 技术相信大家都有接触过,尤其是服务器运维人员,RAID 概念很多,有时候会概念混淆.这篇文章为网络转 ...

  9. Linux中搜索大于200M的文件

    Linux中清理磁盘空间时,经常需要找出大于200M的文件. 这个命令可以实现这个功能: find / -size +200M -exec du -h {} \;

  10. oracle的jdbc 的maven配置

    oracle的jdbc是需要收费,因此在maven的中心库是无法下载.有两个办法引入到工程中,一个是手工,另外一个是加入oracle自己的maven库 一.手工配置(本地依赖) 首先要下载到想要的版本 ...