Linq简单问题

ydh85362600 2012-04-17 02:04:13
var distinctfirst = (from DataRow dr in dt.Rows
select new{
id = dr[btsqlist.Fields["身份证号"].InternalName],
shebaohao =dr[btsqlist.Fields["社保号"].InternalName],
}).Distinct();
现在这个distinct的条件已经正确了 但是我的需求是算出distinct之后dr中金额 一列的总数 现在我无法获取金额列
求正确写法
...全文
140 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
q107770540 2012-04-18
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 的回复:]
引用 5 楼 的回复:

Distinct的规则是: 当身份证号和社保号相同的行,就视为相同行?

那你需要这样:

http://blog.csdn.net/q107770540/article/details/5784646


筛选条件就是这样,然后筛选之后我还要获取dr[“金额”] 这个进行计算
[/Quote]

var distinctfirst = (from DataRow dr in dt.Rows
select new Temp{
id = dr[btsqlist.Fields["身份证号"].InternalName],
shebaohao =dr[btsqlist.Fields["社保号"].InternalName],
money =dr[btsqlist.Fields["金额"].InternalName]
}).Distinct(new TempDataRowComparer())
.Sum(t=>t.money);



public class TempDataRowComparer : IEqualityComparer<Temp>
{
public bool Equals(Temp t1, Temp t2)
{
return (t1.id == t2.id && t1.shebaohao == t2.shebaohao);
}
public int GetHashCode(Temp t)
{
return t.ToString().GetHashCode();
}
}
public Class Temp
{
public int id{get;set;}
public string shebaohao {get;set;}
public double money{get;set}
}
//提供思路参考
q107770540 2012-04-18
  • 打赏
  • 举报
回复
好久不见,水蜜桃
kingdom_0 2012-04-18
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

Distinct的规则是: 当身份证号和社保号相同的行,就视为相同行?

那你需要这样:

http://blog.csdn.net/q107770540/article/details/5784646
[/Quote]
好久不上,上来看看兔子~
ydh85362600 2012-04-17
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

Distinct的规则是: 当身份证号和社保号相同的行,就视为相同行?

那你需要这样:

http://blog.csdn.net/q107770540/article/details/5784646
[/Quote]

筛选条件就是这样,然后筛选之后我还要获取dr[“金额”] 这个进行计算
EnForGrass 2012-04-17
  • 打赏
  • 举报
回复
给点测试数据
用先groupby 用let试试
q107770540 2012-04-17
  • 打赏
  • 举报
回复
Distinct的规则是: 当身份证号和社保号相同的行,就视为相同行?

那你需要这样:

http://blog.csdn.net/q107770540/article/details/5784646
ydh85362600 2012-04-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

GroupBy 之后 Sum
[/Quote]

不明白 能详细一些吗?
ydh85362600 2012-04-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]

GroupBy 之后 Sum
[/Quote]

能详细一点吗?
ydh85362600 2012-04-17
  • 打赏
  • 举报
回复
能详细一点吗?
机器人 2012-04-17
  • 打赏
  • 举报
回复
GroupBy 之后 Sum
LinqSamples 这些示例能够帮助您快速地了解 LINQ。对于具有一定 LINQ 经验的人员来说,它们还可以作为参考和指南。此外,还包括了几种实用工具。它们位于 LinqSamples 文件夹中。 •DynamicQuery: 在运行时创建 LINQ 查询的代码。 •LinqToNorthwind: 关于如何使用 LINQ To SQL 查询数据库的基本示例。 •LinqToXmlDataBinding: 将 LINQ to XML 代码绑定到 WPF 控件。 •ObjectDumper: 用于将 LINQ 查询的输出以文本模式写入屏幕的实用工具。 •PasteXmlAsLinq: 能够自动将 XML 转换为 LINQ to XML 的 Visual Studio 外接程序。 •QueryVisualizer: 使 LINQ to SQL 开发人员能够看到其查询的 SQL 代码,并能在网格中查看查询的结果。 •Reflector: 使用 LINQ 对使用反射 API 的代码中的对象进行正确的查询。 •RSS: 此示例可作为聚合若干 RSS 源的小型 Web 服务器。 •SampleQueries: 这是最重要的示例,其中包含了 500 多个关于如何在 LINQ to Objects、LINQ to SQL、LINQ to XML 和 LINQ to DataSet 中使用各个查询运算符的例子。 •SimpleLambdas: 几个关于如何编写和使用 lambda 表达式的示例。 •SimpleLinqToObjects: 简单LINQ 示例。为您显示使用 LINQ to Objects 创建内存对象的简单查询是多么简单。 •SimpleLinqToXml: 开始使用 LINQ to XML。 •WebServiceLinqProvider(TerraService): 用于 TerraServer-USA Web 服务的自定义 LINQ 提供程序和客户端。 •Whitepapers: 以下白皮书以 Word 格式存储在此目录中: ◦LINQ 项目概述 ◦LINQ to SQL 概述(适用于 C# 和 VB) ◦标准查询运算符 ◦LINQ to XML 概述 •WinFormsDataBinding: 学习如何在 Windows 窗体中使用网格显示 LINQ 查询。它包括一个一对多查询示例。 •XQuery: 另一个简单LINQ to XML 示例查询。此示例显示编写 LINQ to XML 查询所需的最少代码。 LINQ 示例数据库连接问题 如果开发计算机上安装有 SQL Server Express,则这些示例应无需修改即可正常发挥作用。下面是一个 备用连接字符串,如果不使用 SQL Express,但有 SQL Server 可供使用,则可对该字符串进行修改,以用于自己的用途。只要 test 一词显示在示例连接字符串中,您就可能需要修改该单词。 string connString = "server=test;database=northwind;user id=test;password=test"; 对于某些 SQL Express 安装,您可能无权启动用户实例。如果在此情况下收到错误消息,请尝试从连接字符串中删除子句 “;user instance = true”。 确保要访问的 northwind 数据库的副本未标记为只读。如有必要,请浏览到尝试访问的 NORTHWIND.MDF 的副本,右击该文件,然后选择“属性”。清除 只读特性。 用户已报告,在某些运行速度较慢的计算机上,或在使用虚拟 PC 时,某些数据库应用程序在首次运行时出错。请尝试运行该示例两次或三次。 未将 LDF (日志)文件随示例中包含的 Northwind 数据库自定义副本一起提供。特意这样做的目的是为了使 LDF 与 MDF 文件不会失去同步。运行使用该数据库的示例时,或从 Visual Studio 中的服务器资源管理器连接到该数据库时,将会自动创建 LDF 文件。如果在未先创建日志文件的情况下使用 SQL Server Management Studio,则在连接到 MDF 文件时,可能会遇到问题

8,494

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧