ADO,net 实体数据模型增、删、改,浅谈
第一步:建立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 实体数据模型增、删、改,浅谈的更多相关文章
- EF里单个实体的增查改删以及主从表关联数据的各种增删 改查
本文目录 EF对单个实体的增查改删 增加单个实体 查询单个实体 修改单个实体 删除单个实体 EF里主从表关联数据的各种增删改查 增加(增加从表数据.增加主从表数据) 查询(根据主表找从表数据.根据从表 ...
- ADO.NET 增 删 改 查
ADO.NET:(数据访问技术)就是将C#和MSSQL连接起来的一个纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中 也可以将数据库中的数据提取到内存中供程序调用 ADO.NET所有数据访 ...
- 第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据
第18课-数据库开发及ado.net 连接数据库.增.删.改向表中插入数据并且返回自动编号.SQLDataReade读取数据 ADO.NET 为什么要学习? 我们要搭建一个平台(Web/Winform ...
- C# ADO.NET (sql语句连接方式)(增,删,改)
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...
- ADO.NET实体数据模型使用探索1
今天研究了下ADO.NET实体数据模型,想写个关于两张有外键关系的增改删查,以此来稍增加点难度. 编程环境:vs2010+sql2005 1.在SQL2005下建立三张表:学生信息表Student(S ...
- Model First:创建实体数据模型(ADO.NET 实体数据模型)
Microsoft Entity Framework是一个对象关系映射工具(Object Relational Mapping ,O/RM)工具.它可以让你从一个数据库自动地生成数据接入层.实体框架免 ...
- Visual 2015创建新项,缺少ADO.NET 实体数据模型的解决方法
现在的某度查资料真的很麻烦,突然我自身的VS2015创建EF的时候找不到 ADO.NET 实体数据模型,但是使用CodeFrist是可以生成数据表的.所有特别郁闷. 打开界面如下 某度半天,都没有查出 ...
- 好用的SQL TVP~~独家赠送[增-删-改-查]的例子
以前总是追求新东西,发现基础才是最重要的,今年主要的目标是精通SQL查询和SQL性能优化. 本系列主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础] ...
- iOS FMDB的使用(增,删,改,查,sqlite存取图片)
iOS FMDB的使用(增,删,改,查,sqlite存取图片) 在上一篇博客我对sqlite的基本使用进行了详细介绍... 但是在实际开发中原生使用的频率是很少的... 这篇博客我将会较全面的介绍FM ...
随机推荐
- Handsontable vue如何实现在线编辑excal
官网地址:https://handsontable.com/ 1.实现效果 2.安装 import { HotTable } from '@handsontable/vue' import Hands ...
- centos7安装sql-server2017
1. 关闭selinux Vim /etc/selinux/conf 将selinux=enable 改成selinux=disabled 2. 清空/关闭iptables策略 Iptables ...
- 帝国cms7.5整合百度编辑器ueditor教程
1.根据自己使用的帝国cms版本编码下载对应的ueditor版本 下载地址 http://ueditor.baidu.com/website/download.html#ueditor 2.解压附件, ...
- E4A写的app,点按钮,直接进入抖音指定用户界面
今天在网上看到有一个人,直接进抖音某个指定用户的界面,一般模拟的方式,要先通过搜索的方式,再选用户,点进去 但是这样操作,不大友好,也影响速度 最理想的方式,是通过 "无障碍",直接控制抖音进入指定的 ...
- 如何在IDEA上配置Maven
IDEA 全称 IntelliJ IDEA,是java语言开发的集成环境,IntelliJ在业界被公认为最好的Java开发工具之一, IDEA是JetBrains公司的产品,现在有逐步取代老牌Java ...
- ASP.NET与非托管DLL的那些事儿【转+增】
https://www.cnblogs.com/yeahgis/archive/2011/11/12/2246341.html ASP.NET与非托管DLL的那些事儿 环境VS2010 语言:ISO ...
- Linux Shell 之 对文件中的行、单词、字符进行迭代
在进行文本文件进行处理时,对文件件中的行.单词.字符进行迭代和遍历是非常常用的操作.而将一个简单的循环用于迭代,再加上来自stdin或文件的重定向,这就是对文件中的行.单词.和字符进行迭代的基本方法. ...
- 解决用官方容器启动redmine无法插入中文字符的问题
jiangzhaowei@kitking:/kitking/redmineIot$ sudo docker-compose up -d Creating network "redmineio ...
- boost中g++ 链接undefined reference to `boost::system::generic_category()问题
编译错误如下: g++ -std=c++11 tcp_session.cpp tcp_server.cpp test.cpp -o test -pthread/tmp/ccv4rZkD.o: In ...
- RequestUtil 获取网址页面信息
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.i ...