问题标签 [linq-to-dataset]
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.
c# - LINQ to DataSet 按多列分组 - 方法语法
我的问题与之前提出的两个问题相同
LINQ TO DataSet: Multiple group by on a data table,与这个问题的唯一区别是我需要使用方法语法来做到这一点。
和
LINQ Group By Multiple fields - 语法帮助- 这个问题的不同之处在于我需要使用 LINQ-to-DataSet 来执行此操作。
我正在尝试按国家/地区对客户进行分组,结果(预期)如下:
我们如何做到这一点?谢谢你。
编辑:
这是我正在努力解决的混乱代码。
c# - DataTable 不包含 AsEnumerable 的定义
使用 linq 查询数据表返回以下错误:CS0117: 'DataSet1.map DataTable' does not contain a definition for 'AsEnumerable'
项目包括 System.Data.Datasetextensions 的参考。
这是代码。
在没有 AsEnumerable() 的情况下运行它会导致
CS1660:无法将 lambda 表达式转换为类型“字符串”,因为它不是委托类型
在此先感谢您的帮助
c# - 如何使用 LINQ to DataSet 过滤集合
我正在使用一个DataSet
包含两个表的表,我试图通过 LINQ 从中获取数据。
我正在努力弄清楚如何返回满足条件的记录的语法。
例子:
下面是两张表:
此查询连接两个表(项目 Z 将被过滤掉)
这是从上述查询派生的集合。
问题:如何仅退回 Foo 项目?
请注意 Foo 项目如何在其第一行/记录中具有非空值,而 Bar 项目在第一行/记录中没有非空值。使用所有 Foo 项在 foo 列中至少有一个非空值并且 Bar 项在 foo 列中永远不会有非空值这一事实,我如何更新上述查询以使查询仅返回 Foo 项? 同样,如何更新查询以使其仅返回 Bar 项目?
c# - 如何通过不包含在数组中的值过滤 DataTable?
如果我有一个 DataTable userwidget
,它有以下列:
process_id、emp_num、widget_color
如何根据以下条件DataTable
进行过滤:LINQ
1-在哪里emp_num = ...
2和process_id NOT IN (process)//process is an array of intgers
c# - LINQ 查询中 DateTime 为空的转换问题
这是我在 linq 查询中使用的数据表的配置:我有 2 个数据集文件(所有表的所有列都指定了 DataType,并且它们的 AllowDbNull 属性设置为 True): * deposit_position_imbalance.xsd:包含 2 个数据: - 不平衡 - ImbalanceDetailForRealTime * dep_pos_imbalance_detail.xsd:包含 1 个数据表: - 表
在下面的代码中,问题在于 2 行“deal_date = b.deal_date”。实际上,当我从数据库 b.deal_date 检索具有空值时,它在 deposit_position_imbalance.Designer.cs 中显示:“StrongTypingException 未被用户代码处理”“表 'ImbalanceDetailForRealTime' 中列 'deal_date' 的值是 DBNull。 " “指定的演员阵容无效”。这是它引发错误的地方:
- 我试图将“deal_date = b.deal_date”行替换为“deal_date = (DateTime?)b.deal_date”,但出现 2 个编译错误:“dep_pos_imbalance_detail.TableDataTable.AddTableRow(string, System. DateTime)' 有一些无效的参数”和“参数 '2': 不能从 'System.DateTime?' 转换” 到'System.DateTime'"
- 我还尝试将“deal_date = b.deal_date”行替换为“deal_date = b.deal_date == null ? (DateTime)DBNull.Value : b.deal_date”但我收到编译错误:“无法转换类型'System .DBNull' 到 System.DateTime'"
- 然后我尝试用“deal_date = b.deal_date == null ?(DateTime?)DBNull.Value:b.deal_date”替换“deal_date = b.deal_date”行但我收到编译错误:“无法转换类型' System.DBNull' 到 System.DateTime?'"
- 我尝试了另一件事:将“deal_date = b.deal_date”替换为“deal_date = b.Isdeal_dateNull() ? default(DateTime?) : b.deal_date” 但同样,我有以下错误:“最好的重载方法匹配dep_pos_imbalance_detail.TableDataTable.AddTableRow(string, System.DateTime)' 有一些无效参数”和“参数 '2':不能从 'System.DateTime 转换?' 到 'System.DateTime'" 下图(抱歉,我还不允许在 stackoverflow 中插入图像,所以我放了链接)显示了我的数据集中的列 deal_date 的定义: https://lh5.googleusercontent。 com/-TEZZ9Hdnkl4/T1aRxF_i7II/AAAAAAAAAAg/BwzrVXIlOHE/s323/deal_date.jpg 我们可以看到我似乎没有可能设置“System.DateTime?” 但只有“System.DateTime”。而且我不想要除了 null 作为默认值之外的任何其他值(我们是否必须放置默认值“”以外的其他内容才能使其工作?)更新->我尝试使用 null 而不是设计师给出了这个错误:“字符串未被识别为有效的日期时间。从索引 0 开始有一个未知单词。”。
所以我不明白我怎么能设法检索空值(我没有把它放在代码中,但我对 double 类型有同样的问题)。我的印象是我的列设置为启用空值,但显然不是......此外,当我尝试修改 NullValue 属性以从“(抛出异常)”到“(空)”或“(空)”时,设计者给出这个错误:“输入的值对当前数据类型无效。” 感谢您的帮助。这是我的 LINQ 查询:
c# - c#中数据集的Linq查询?
我有数据集,其中包含两个这样的表:
如何将以下 SQL 查询写入 LINQ
vb.net - 如何在此 linq 查询中放置 Sum()?
我正在寻找总结“状态”字段。
我还想将其保留为 DataRow 的 IEnumerable,因为我将使用它创建一个数据表
.net - LINQ:查询返回空对象列表
我有一个“选择”类型对象的查询:
发生的事情是,如果我为的构造函数设置断点Foo
和步骤,构造函数被命中并且参数被加载参数。但是,l
有空Foo
对象(每个对象中的成员都是Nothing
)。这里会发生什么?
c# - linq 作为列名的数据集问题
如何避免在针对数据表的 LINQ 查询中使用魔术字符串?
这有效:
但这失败了“指定的演员表无效。”:
我的偏好是使用本地字符串(或 myDictionary 的直接引用),而不是对字符串进行硬编码。所以我想在查询中使用字符串 disp 而不是短语“display”。
linq - 加入 LINQ 以避免在“new {}”中显式命名属性?
我想做这样的事情:
我目前得到的最接近的是以下内容:
我希望我的结果 (q) 包含来自 c 和 j 的所有列。c 和 j 都包含很多列,所以我不想这样列出它们:
但我基本上希望最终的 DataTable 由 c.* 和 j.* 组成。
如果我在“select new”中指定所有 c 和 j 列,则此答案(不是已接受的答案,而是其下方的答案)有效: 如何将 LINQ 结果转换为 DATATABLE? 但我想避免将它们全部列出。