绑定数组对象DataTable.Select返回值DataRow[]

System.ArgumentException:该行已经属于另一个表 在 C# 数据处理中,经常需要将数据从一个`DataTable`转移到另一个`DataTable`。但直接执行以下操作时会抛出异常:**"该行已经属于另一个表"(This row already belongs to another table)** 阅读详情
 

方法一:

DataTable dt = (DataTable)gvDraftList.DataSource;
DataSet ds=new DataSet();
ds.Merge(dt.Select(where));

gvDraftList.DataSource = ds.Tables[0];

方法二:

DataTable dt = (DataTable)gvDraftList.DataSource;
gvDraftList.DataSource = new DataView(dt, where, "", DataViewRowState.CurrentRows).ToTable();

方法三:

DataTable dt = (DataTable)gvDraftList.DataSource;

DataTable temp=dt.Clone();
foreach (DataRow dr in dt.Select(where))
{
      //temp.Rows.Add(dr); //出错提示为:该行已经属于另一个表
      temp.Rows.Add(dr.ItemArray);
}
gvDraftList.DataSource = temp;

使用扩展方法:

using System.Data;

namespace Bll.Ext.Object
{
    public static class ObjExt
    {
        public static DataTable Select(this object o, string where)
        {
            DataTable dt=o as DataTable;
            if (dt !=null)
            {
                return new DataView(dt, where, "", DataViewRowState.CurrentRows).ToTable();
            }
            else
            {
                return null;
            }
        }
    }
}

调用:

using Bll.Ext.Object;

namespace ...
{
        public partial class ...
         {
              private void BindData(string where)
              {
                         gv.DataSource = Bll.MyData.GetDataTable();
                         gv.DataSource = gv.DataSource.Select(where);
                         gv.DataBind();
              }
         }
}

58、代码中处理数据库的全面指南 本文详细介绍了在代码中处理数据库的完整流程,涵盖数据库连接、数据集填充、数据表创建、数据关系建立以及表中单元格数据的读取。通过丰富的VB.NET示例代码和流程图,深入讲解了DataSet、DataTable、DataColumn、DataRow和DataRelation等核心类的使用方法,并分析了关键技术点与常见问题的解决方案,帮助开发者全面掌握数据库编程的基础与实践。 阅读详情

相关推荐

说一下Intel Fortran 编译器经典版ifort和新一代ifx

摘要:ifort是Intel开发的传统Fortran编译器,以稳定性和遗留代码兼容性著称,现已进入维护模式。ifx则是基于LLVM架构的新一代Fortran编译器,具有更好的性能优化、更快的编译速度,并支持最新Fortran标准和GPU加速。英特尔计划逐步用ifx取代ifort,前者将成为未来主力发展的产品线。两者的核心区别在于技术基础(传统vs.现代化LLVM)和功能支持(维护状态vs.持续更新)。

luohaitao的专栏 1347

datatable数据绑定

$.get(projectName + "/getXXXXXX",   function(data){     // 结果渲染     if (data.statusCode == 20000) {     var dataList = data.data;     // 遍历循环写tbody     var tableData = new Array(dataList.leng...

qq_35599860的博客 526

微信小程序导航栏滑动一定距离后固定到顶部

接上一篇文章的内容,通常在一个页面中部会有一个导航栏查看不同的内容,这篇文章旨在实现在页面下滑的过程中导航栏自动固定到顶部以便我们阅读过程中的切换。 下滑一段距离后自动固定到顶部 首先,思考这个功能应该是怎么实现的: 在页面下滑的过程中,我们希望系统应当能识别下滑了多少距离,当原本的导航栏逐渐被遮住以后(遮住意味着下滑了特定距离),触发这个功能,执行另一种样式,将导航栏固定在页面顶端,同时如果我们将页面往上滑,系统能识别到原来的导航栏能露出来了(即距离顶端的高度小于一个特定的值),这时候又执行最初的样式

Oblivision_Geek的博客 4029

dataGridView直接绑定DataRow数组(导入datatable中)

DataTable dt = new DataTable(); for (int i = dt.Rows.Count; i {     DataRow dr = dt.NewRow();     for (int j = 0; j     {         dr[dataGridView1.Columns[j].Name] = dataGridView1.Rows[i].Cell

brian0031的专栏 1336

保姆级教程:用ncnn把自训练的YOLOv8模型塞进Android App(附完整代码)

本文提供了一份详细的保姆级教程,指导开发者如何将自训练的YOLOv8模型通过ncnn框架部署到Android应用中。教程涵盖环境配置、模型训练与转换、Android工程集成及性能优化等全流程,并附完整代码实现,帮助开发者快速掌握移动端AI模型部署技术。

weixin_42659194的博客 255

[DA45] 使用PageRank算法分析希拉里邮件中的人物关系

一. 相关知识 (一) PageRank算法 PageRank 算法是 google 公司的创始人拉里·佩奇和谢尔·盖布林于1998年提出的网页搜索优化算法. 详细内容请见百度百科:google pagerank. 如果你了解了该算法, 就能明白上一段的超链接从本页面链出, 链入百度百科的 PageRank 算法页面增加了该页面...

Vincent_Chu的博客 2375

el-table动态表格,后端返回纯数组前端的处理

el-table动态表格,后端返回纯数组前端的处理

m0_58169573的博客 907

人类肠道微生物群落代谢建模

MICOMWeb 是款用户友好型网站,专为人类肠道微生物群落代谢建模设计。该网站旨在解决基因组尺度代谢模型(in silico)构建过程中的3大限制:① 使用 MICOM Python 包进行通量平衡分析时对用户 Python 编程知识的要求;② 支持预定义和用户自定义饮食,以生成专属代谢模型;③ 处理宏基因组鸟枪法测序或 16S 扩增子测序获得的真实丰度数据时,所需的高通量计算基础设施。本文展示了 MICOMWeb 的核心功能,用户可轻松开展虚拟实验,为3个已发表数据集的实验验证生成功能性假设。

多组・学・多组学 1167

把一个DataTable对象转换成一个数组对象

示例代码1:(DataTable中包含多列数据的情况)         public Customer[] GetAll()         {             DataTable table = SqlHelper.ExecuteDataTable("select FId, FName, FBirthday, FCustLevel, FTelNum ,FAddress

zunguitiancheng的专栏 5080

SWMM建模与案例应用

4、排水系统控制规则通过控制功能,可以在模拟进行过程中,通过条件判断,对闸门、水泵、管道、孔口、堰进行控制,实现排水系统实时控制。5、SWMM与其他模型对比分析分析:STORM、MOUSE、Info Works、SUSTAIN、SWC。1、模型初始设置主要参数:雨量计、汇水区、节点、出水口、管渠、分流器、蓄水池等参数前缀的设置。2、气象数据设置温度、蒸发、风速、融雪、面积亏损、气候调整、雨量计。1、多软件数据交互:CAD、Arcgis、SWMM。(1)节点、管段、水泵、孔口、堰、雨水口和街道。

m0_74575633的博客 3417

六款经典限流保护电路设计:从原理到实战的完整指南

在电子系统设计中,过流保护是确保电路可靠运行的基础技术。其核心原理是通过电流采样、比较与执行三个环节构成闭环控制,将不可见的电流转化为可测量的电压信号进行处理。这项技术的核心价值在于防止因短路、堵转或异常负载导致的元器件损坏,从而提升整个系统的稳定性和安全性。在电源管理、电机驱动和精密仪器等应用场景中,限流保护电路都是不可或缺的安全屏障。本文深入解析了基于运放和晶体管搭建的经典方案,并重点探讨了采样电阻选型、参考电压生成以及PCB布局中的开尔文连接等工程实践要点,帮助读者从热门的DIY项目到工业控制都能实现

weixin_29166013的博客 350

java datarow_DataSet & DataTable &DataRow 深入浅出

本篇文章适合有一定的基础的人去查看 ,最好学习过一定net 编程基础在来查看此文章。1.概念DataSet是ADO.NET的中心概念。可以把DataSet当成内存中的数据库,DataSet是不依赖于数据库的独立数据集合。所谓独立,就是说,即使断开数据链路,或者关闭数据库,DataSet依然是可用的,DataSet在内部是用XML来描述数据的,由于XML是一种与平台无关、与语言无关的数据描述语言,而...

weixin_30661579的博客 740

Python爬虫实战:逆向工程与异步爬虫技术,高效抓取国家知识产权局专利数据

相比于传统的Selenium,Playwright由微软开发,支持多浏览器(Chromium, Firefox, WebKit),API更现代,执行速度更快,并且能轻松录制用户操作生成代码。通常,列表中的摘要信息是缩略的,我们需要进入每个专利的详情页获取完整信息(如主权要求、法律状态等)。我们的第一步是手动操作一遍搜索流程,并用Playwright的“录制”功能或开发者工具,找出真正返回专利数据的那一个或多个网络请求。以友好的、对人类行为模拟的方式爬取数据是基本的网络礼仪,也能有效避免你的IP被封锁。

2201_76125261的博客 2418

DataGridView綁定數據相關

DataGridView 的Datasource可以是以下幾種接口的類型 Ilist接口,例如數組 IlistSource接口,例如 DataTable,DataSet類 IBindingList接口,例如 BindingList類 IBindingListView接口,例如 BindingSource類 一、 對于數組 ,如果直接進行綁定,可能得不到我們想要的結果。 //bind array string[] arrTest = { "AAAAA", "BBBBB", "CCCCC", "DDD

segclliwf的博客 128

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

在DataTable和DataView中查找指定记录

一、在DataTable中查找 1. 使用Select方法查找没有主键的表 DataTable的Select方法返回一个DataRow数组,有四个重载的函数。DataRow[] drs = dt.Select("UserName LIKE '张%'"); 2. 使用Find方法查找有主键的表 分两种情况: (1) 主键只有一个字段 DataRow dr = dt.Rows.Fi

GoodShot的专栏 6968

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

DataSet & DataTable &DataRow 深入浅出

DataSet & DataTable &DataRow 深入浅出       本篇文章适合有一定的基础的人去查看 ,最好学习过一定net 编程基础在来查看此文章。 1.概念   DataSet是ADO.NET的中心概念。可以把DataSet当成内存中的数据库,DataSet是不依赖于数据库的独立数据集合。所谓独立,就是说,即使断开数据链路,或者关闭数据库,DataSet依然是...

weixin_34128534的博客 193

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

C#_从DataTable中检索信息

C#_从DataTable中检索信息 存在于内存中的虚拟表DataTable,绑定在数据显示控件后,如果想在再检索其中某些信息,可以利用DataTable.Select方法进行检索,避免了重复的读取数据库。Select方法共有4个重载方法。 先创建一个DataTable: DataTable dt = new DataTable("Student");//DataTable对象...

weixin_30316097的博客 344

DataTable中检索信息 (C#)

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34242819的博客 328

脱机数据的排序、搜索和筛选

 1. DataTable类的搜索和筛选功能l         根据主键值查找行DataRowCollection类的Find方法,接受包含要查找行的主键值为参数,因为是根据主键值查找,所以仅返回一个DataRow。DataTable tbl=new DataTable(“Customers”);da.Fill(tbl);tbl.PrimaryKey=new DataCol

肖大宝产品之路 775

数据集中快速查找记录小结

数据集中快速查找记录小结 一、在DataTable中查找1. 使用Select方法查找没有主键的表DataTable的Select方法返回一个DataRow数组,有四个重载的函数。DataRow[] drs = dt.Select("UserName LIKE 张%");2. 使用Find方法查找有主键的表分两种情况:(1) 主键只有一个字段DataRow dr = d

Leonard 1054

ADO.NET的记忆碎片(七)

使用DataTable类的搜索和筛选功能DataTable类公开了两个方法:Find和SelectFind方法:可以根据主键来查找数据行。Select方法:更类似于筛选器,根据更灵活的搜索条件返回多个数据行在查询数据库获取信息时,假如使用如下SQL查询: select CustomerID,CompanyName,ContactName,Phone from Customers where...

weixin_30445169的博客 84

WPF 学习周记:从入门到完成一个学生信息管理系统(简易版)

真正理解了 WPF"数据驱动 UI"的思想。以前写界面总是"给控件取名 → 事件里手动赋值",现在变成"绑定数据 → 数据变界面自己变",代码干净了很多。其次是通过这个项目把零散的知识串了起来:布局(Grid/Border)、数据绑定(DataGrid + Binding)、ADO.NET(DBHelper + 参数化查询)、分层架构(BLL/DAL/Model),每一样都在项目里找到了用武之地。接下来打算继续深入学习一下 MVVM 模式、控件模板的自定义,以及把DBHelper。

2301_76940384的博客 203

黑马程序员之ADO.NET学习笔记:通过数据集操作数据

数据集是最常用的访问数据的方式,其主要流程是连接数据库、进行数据查询、将查询结果填充到数据集、对数据集中的数据进行展示和操作、将操作后的数据集提交数据库,通过这一系列操作实现对数据库的修改,此过程主要通过DataSet、DataAdapter、DataTable、DataRow、DataColumn、SqlCommandBuilder等类实现。 根据上面所说到过程,逐步分析: 1、数据查询,这

blog_优快云_xutingzhou 556
上一篇: 将鼠标锁定在一定的范围内
下一篇: 获取本月、本季、本年最后一天等等sql(sql server)
VBEND
博客等级 码龄23年 16粉丝 26原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值