将同类对象分组 C#
我有一个对象列表,这些对象通过其属性之一(例如“ID”)进行锁定或唯一标识。我需要对具有不同 ID 的所有对象进行分组,这些对象的其余属性将相同。
示例:Obj 具有属性“ID”、“E1”、“E2”、“E3”。请注意,这些都是 Obj 的属性。
我知道所有 Obj 列表的 ID 都不同,但如果不同 Obj 的 E1、E2 和 E3 相同,则希望进行分组。所以我会有一组具有相同 E1、E2、E3 但 ID 不同的 Obj。
在 C# 中处理这个问题最简单的方法是什么,有什么想法吗?
I have a list of objects that are keyed off or identified uniquely by one of their properties say "ID". I need to group all the objects of different ID's that will have rest of properties the same.
Example: Obj has properties "ID", "E1", "E2" , "E3". Note these are all properties of the Obj.
I know ID's are different for all List of Obj's, but would like to group if E1,E2 and E3 are same for different Obj's. So I would have array of Obj's that have same E1,E2,E3 but different ID's.
What's the easiest way of handling this in C#, any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
好吧,类似这样的东西可以与 LINQ 一起使用:
这将为您提供一系列可以迭代的分组。例如:
Well, something like this would work with LINQ:
That will give you a sequence of groupings you can iterate over. For example:
实现对象之间公共属性/方法的接口。使用接口类型进行交互。
Implement an Interface of common properties/methods between the objects. Use the interface type for interaction.
Linq 对我来说听起来不错。
Linq sounds good to me.