处理查找列表中相继出现的项目的最佳方法是什么?
我有一个像这样的类,
public class HistoryEntry
{
DateTime Date{ get; protected set; }
HistoryType EntryType { get; protected set; }
}
public enum HistoryType
{
Cancelled,
Cleared,
Redeemed,
Refunded
}
我有这些历史条目的无序列表,并且我执行 Exists 语句来查看列表中是否存在条目。
return Entries.Exists(e => e.EntryType == HistoryEntryType.Cancelled);
现在我需要更改此设置,以便此方法返回在最后清除条目的时间戳之后是否存在取消条目(如果存在),否则仅返回取消条目是否存在。
我仅限于 .Net 2.0 中可用的选项
I have a class like this
public class HistoryEntry
{
DateTime Date{ get; protected set; }
HistoryType EntryType { get; protected set; }
}
public enum HistoryType
{
Cancelled,
Cleared,
Redeemed,
Refunded
}
I have an unordered list of these History Entries, and I do Exists statements to see if an entry exists in the list.
return Entries.Exists(e => e.EntryType == HistoryEntryType.Cancelled);
Now I need to change this so that this method returns whether or not a Cancelled entry exists after the TimeStamp of the last Cleared entry if one exists, otherwise just return whether a Cancelled entry exists at all.
I'm limited to options available in .Net 2.0
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
像这样的事情怎么样:
我正在使用 C#2.0 语法...
哦,还有一件事,确保您的 HistoryEntry 类实现 IComparable:
How about something like this:
I'm using C#2.0 syntax...
Oh and one more thing, make sure your HistoryEntry class implements IComparable:
搜索列表中匹配条目的索引,这需要两次搜索。
请参阅http://msdn.microsoft.com/en-us/library/efasdh0s.aspx。
Search for the index of the matching entries in the list, which requires two searches.
See http://msdn.microsoft.com/en-us/library/efasdh0s.aspx.