Tag: datatable

DataTable已经属于另一个DataSet

在将数据集中的一个数据集添加到另一个数据集时发生此错误。“DataTable已经属于另一个DataSet”。 dsformulaValues.Tables.Add(m_DataAccess.GetFormulaValues (dv.ToTable.DefaultView.ToTable(False, strSelectedCols)).Tables(0))

ReadOnlyException DataTable DataRow“列X是只读的”。

我有一小段代码反复创build了一个SqlDataAdapter对象。 为了简化我的调用,我用SqlCommandreplace了SqlDataAdapter ,并将SqlConnection移到了循环之外。 现在,每当我尝试编辑返回到我的DataTable的数据行时,我得到一个抛出不抛出的ReadOnlyException 。 注意:我有一个自定义函数,根据它的ID检索员工的全名。 为了简单起见,我在下面的示例代码中使用了“John Doe”来展示我的观点。 ExampleQueryOld与SqlDataAdapter一起使用 ; 每当我尝试写入DataRow的元素时, ExampleQueryNew都会失败并返回ReadOnlyException : ExampleQueryOld 这工作,没有问题: public static DataTable ExampleQueryOld(string targetItem, string[] sqlQueryStrings) { DataTable bigTable = new DataTable(); for (int i = 0; i < sqlQueryStrings.Length; i++) { string sqlText = sqlQueryStrings[i]; DataTable data = new DataTable(targetItem); using (SqlDataAdapter da = new SqlDataAdapter(sqlText, Global.Data.Connection)) { […]

将DataTable转换为IEnumerable <T>

我想将一个DataTable转换为IEnumerable。 其中T是我创build的自定义types。 我知道我可以通过创build一个列表来做到这一点,但我认为有一种使用IEnumerable的方法。 这是我现在拥有的。 private IEnumerable<TankReading> ConvertToTankReadings(DataTable dataTable) { var tankReadings = new List<TankReading>(); foreach (DataRow row in dataTable.Rows) { var tankReading = new TankReading { TankReadingsID = Convert.ToInt32(row["TRReadingsID"]), TankID = Convert.ToInt32(row["TankID"]), ReadingDateTime = Convert.ToDateTime(row["ReadingDateTime"]), ReadingFeet = Convert.ToInt32(row["ReadingFeet"]), ReadingInches = Convert.ToInt32(row["ReadingInches"]), MaterialNumber = row["MaterialNumber"].ToString(), EnteredBy = row["EnteredBy"].ToString(), ReadingPounds = Convert.ToDecimal(row["ReadingPounds"]), MaterialID = Convert.ToInt32(row["MaterialID"]), Submitted = […]

如何获取列名在此C#程序中打印?

我已经拼凑了一个C#程序,它将一个.csv文件写入一个DataTable 。 使用这个程序,我可以遍历DataTable每一行并打印DataTable包含的信息。 控制台输出如下所示: — Row — Item: 1 Item: 545 Item: 507 Item: 484 Item: 501 我想打印每个值旁边的列名称,以便它看起来像这样: — Row — Item: 1 Hour Item: 545 Day1 KW Item: 507 Day2 KW Item: 484 Day3 KW Item: 501 Day4 KW 有人可以看我的代码,并告诉我可以添加什么,以便列名将打印? 我对C#很新,所以请原谅我,如果我忽略了一些东西。 这是我的代码: // Write load_forecast data to datatable. DataTable loadDT = new DataTable(); StreamReader […]

访问数据表的单元格值

任何人都可以帮助我如何访问第四列的第一个单元格的值? abcd 1 2 3 5 gnml 例如,如何访问价值d,如果这将是可数据的? 谢谢。

导出DataTable以优于EPPlus

我想导出数据表到excel文件与EPPlus的数据表具有inttypes的属性,所以我想在Excel文件中,将相同的格式。 有没有人知道一种方法来导出一个DataTable到Excel与这些?

用LINQ查询DataColumnCollection

我试图在DataTable的Columns属性上执行一个简单的LINQ查询: from c in myDataTable.Columns.AsQueryable() select c.ColumnName 但是,我得到的是这样的: 找不到源types“System.Linq.IQueryable”的查询模式的实现。 “select”未find。 考虑明确指定范围variables“c”的types。 我怎样才能让DataColumnCollection和LINQ一起玩呢?

如何添加具有值的新列到现有DataTable?

我有一个DataTable 5列和10行。 现在我想添加一个新的列到DataTable,我想分配DropDownList值到新的列。 所以DropDownList值应该被添加10次到新的列。 这个怎么做? 注意:不使用FOR LOOP。 例如:我的现有DataTable是这样的。 ID Value —– ——- 1 100 2 150 现在我想添加一个新的“CourseID”到这个DataTable。 我有一个DropDownList。 它的select值是1.所以我现有的表格应该如下所示: ID Value CourseID —– —— ———- 1 100 1 2 150 1 这个怎么做?

如何检查数据表中是否存在列

我有一个csv文件的内容生成一个datable。 我使用其他信息将csv的某些列(现在在数据表中)映射到用户需要填写的信息。 在最好的世界里映射将是可能的。 但是这不是现实…所以在我尝试映射数据列的值之前,我需要检查该列是否存在。 如果我不做这个检查,我有一个ArgumentException。 当然,我可以用这样的代码来检查: try { //try to map here. } catch (ArgumentException) { } 但我现在有3列地图和一些或全部可能存在/缺失 有没有好的方法来检查一个数据表中是否存在一列?

你如何sorting一个DataTable列和方向?

我需要在内存中根据来自GridView的列和方向使用DataTable。 该function需要如下所示: public static DataTable resort(DataTable dt, string colName, string direction) { DataTable dtOut = null; …. } 我需要填写这个function的帮助。 我想我可以使用Select语句,但我不知道如何。 我无法点击评论,因为这个浏览器,但你可以给我一个就地或新的DataTable解决scheme,任何一个。 请给我看指针的人,我需要一个类似于原型的编码函数。 怎么样: // ds.Tables[0].DefaultView.Sort="au_fname DESC"; public static void Resort(ref DataTable dt, string colName, string direction) { string sortExpression = string.Format("{0} {1}", colName, direction); dt.DefaultView.Sort = sortExpression; }