问题标签 [datatable]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
.net - .NET DataTable 的最佳用例是什么?
我有三个表客户,工作,订单
我在数据集中也有这些表,它符合与数据库本身相同的约束。
最初,我的意图是将数据保留在 DataSet 中,并创建各种 DataView 对象以向用户显示这些数据,并执行任何所需的操作,然后显然将使用 .NET TableAdapter 方法将其更新回数据库.
但是,似乎 DataView 对象只能对单个 DataTable 对象进行操作。
我的问题是:这是在内存中创建数据以确保可维护性和性能的最佳方式。
- 创建多个包含非规范化数据的 DataTable 对象。这可能会在内存中创建数据的副本,但我更担心在更改数据库时会出现问题。
- 创建一些自定义类,它按照我期望 DataView 的行为方式运行,并且还能够自动更新 DataSet(然后是数据库)。
.net - 查找两个 .NET 数据表的交集
有没有一种相对简单的方法可以在 .NET 中获取两个 DataTables 的交集?
我可以想到明显的方法(我自己在 O(n^2) 中迭代这两个表),但如果它可用的话,我想要更优雅的东西。我怀疑可能有一种我没有看到的智能方式。当然,可读性和可维护性很重要,所以我试图远离任何过于“花哨”的东西。
有什么好主意吗?
编辑:看起来 Bryan Watts 为 3.5 提供了一个非常棒的解决方案,但不幸的是我在 .NET 2.0 中(我应该提到过。)
c# - DataGridView - DataTable - 显示属性
(.NET 2.0、System.Windows.FormsDataGridView 和 DataTable)
我有 1 个数据网格连接到 1 个数据表。
该数据表包含 1 列:包含我自己类型“MyObject”的对象。
MyObject 有一个公共字符串属性“MyProp”。
我想在网格中显示 1 列:显示表中 MyObjects 的属性 MyProp 的字符串值。
但我似乎无法让它工作。
示意图:
- myTable.Column1.Name:“对象”
- myDataSet 包含 1 个表:myTable(填充了几行)
- myBindingSource.datasource = myDataSet
- myBindingSource.DataMember = myTable
- myDataGridView.DataSource = myBindingSource
在 myDataGridView: 1 DataGridViewTextBoxColumn
试用一:
Column.DataPropertyName="Obj"(默认生成)
显示(覆盖)MyObject.ToString() 的结果 不是我想要的,这个函数用于记录。
- 试玩2:
GridViewColumn.DataPropertyName="Obj.MyProp"
不显示任何内容(从未调用 MyProp 的get)
试用 3:使 MyProp 属性可绑定:
相同,与试用 2 没有区别
简而言之:
GridViewColumn.DataPropertyName 似乎不支持进一步深入到数据表列中的对象。
有人有什么想法吗?
提前致谢!
简
c# - 将列添加到绑定到 DataGridView 的 DataTable 不会更新视图
我有一个从 CSV 文件填充的 DataTable,然后使用 DataGridView 在内存中编辑数据。据我了解,数据的编程编辑应该在用户编辑完成的 DataTable 上完成。数据网格视图。
但是,当我以编程方式向 DataTable 添加列时,它不会自动反映在 DataGridView 中,我怀疑反之亦然。
你如何保持两者同时存在?我认为数据绑定的想法是这是自动的......
添加行也可以正常工作。
解决了:
尽管在属性对话框中(并在代码中明确设置),AutoGeneratedColumns
但false
在设计器代码中设置为。true
初始列是以编程方式生成的,因此不应该出现,但是由于设计器代码还继续生成最初用于调试的“设计在”列,因此没有发现这一点。
道德:检查自动生成的代码!
c# - 更改绑定到 DataGridView 的 DataTable 中的列顺序不会反映在视图中
当应用程序运行时,DataGridView
绑定到一个DataTable
. 后来我以编程方式添加更多列DataTable
,它反映在基础数据中 - 即列序数应该是。然而,这并没有反映在DataGridView
. 而是将列附加到最初生成的集合上。
这个例子表明,
按钮 1 生成列,按钮 2 添加列并将序号设置为 0,因此它应该在网格中排在第一位,按钮 3 显示列的序号并显示它们在DataTable
.
linq - 将数据集转换为 IQueryable或 IEnumerable
由于还没有 Linq to DB2(来吧 IBM!),并且我想在我的代码中处理 IQueryables 或 IEnumerables,我将如何将 DataTable 转换为 IQueryable?还是一个 IEnumerable?
我有一个接口和一个与数据表中的列匹配的类...
DataTable.Rows 不支持 .AsQueryable,因为 MSFT 取消了它,所以我不知道该怎么做。
c# - VC# 2008:从 DataTable 中获取表名到 ComboList / 如何合并来自 2 个 MDB 的表?
我正在编写的程序的目的是由这个问题引起的:
有两个用户,每个用户保存到一个 .MDB 文件。一个用户拥有一半更新/正确的信息(另一半已过时),另一个用户拥有一半信息(另一半已过时)。
用户 1:25% + 25% = 50% 需要当前信息,另外 50% 已过时用户 1 处理 4 个项目中的 2 个。
用户 2:25% + 25% = 50% 需要当前信息,另外 50% 已过时用户 2 处理 4 个项目中的 2 个。
我需要从假设中提取 50%(4 个项目中的 2 个)...... User1 并将其添加到 User2 使其成为 100% 的当前(4 个项目中的 4 个)。
他们的 SQL 样式表结构(无论如何都应该)是相同的(但如果可能的话,我想提供一个事件,我会知道添加了一些新表)
如果我能找到如何从 DataTable 中获取所有表名,我可以通过 DataTable 系统地排列并用我知道需要更新的其他 .MDB 文件中的表替换这些表。我知道 DataSet 有“DataSet.Tables”……但这对我没有多大帮助。
如果我能做到这一点,我还可以将表格添加到组合框中,并在组合框所说的任何地方创建功能,这就是我将在我的 Datagrid 上列出的表格。
如果你们中的任何人对如何执行此操作有任何想法(或者如果您甚至理解我在说什么),请告诉我。我已经完成了这个项目的 70%,这些似乎是我最后的逻辑障碍。我想我解释得对。
- 如何仅列出 DataTable 对象中的表名称。
- 您对从 .MDB 文件中取出特定表并将它们添加到另一个 .MDB 文件有什么想法?
- 我将如何输入一个包含所有表名的 ComboList 下拉框...当我更改表名时,它会在 Datagrid 上列出这些内容。
- 有没有办法在 Datagrid 上列出表格,当您单击表格时,它会列出该表格的内容(有点像树结构)。
编辑:我认为他是对的!我认为 DataTables 只是一个表,而 DataSets 是一组表。考虑到这一点,如何将 .MDB 文件中的所有表列出到 DataSet 中?那将完美地解决我的问题。
.net - 合并数据表列
您好我有两个数据表说:
表格1:
表 2:
我想合并这两个表以获得类似的东西
这可能吗?我尝试了合并,但它似乎不起作用,谢谢。
我不能做你们建议的原因是因为这两个数据来自两个不同的数据库(Oracle,SQL)。我不能使用链接服务器,因为速度不存在,您可以向我建议我可以以编程方式执行的操作吗?谢谢。
asp.net - 数据表和 JavaScript
每次添加一行时,有没有办法避免使用 gridview 回发?
换句话说,我是否可以将 DataTable 存储在客户端并在完成保存后将其传递给服务器控件,而不是每次添加行时都进行回发?
我搜索和搜索......我能找到的只是 Web 服务、JSON,我觉得这里是多余的......这是一个简单的任务,我相信每个人都必须在某个时候做。
任何人都可以对此有所了解吗?
.net - 数据行更新 .NET
我对数据行以及如何更新它有疑问...
我有一个包含两列的数据表,id 和 name。我执行以下操作:
我在这里要做的是添加一个新的列“Fri”。然后对于数据表中已经存在的每个条目,我希望将 Fri 列中的值设为 4。感谢您的帮助。