使用 Find 方法在通用列表中查找对象

发布于 2024-07-20 10:44:04 字数 238 浏览 7 评论 0原文

class Cache
{
    int sizeOfCache;//no of RssFeedDocument 
    private List<RssFeedDocument> listOfRssFeedDocument = null;
}

我想根据 RssFeedDocument 的属性 FeedId 在类中的通用列表中找到一个对象。

class Cache
{
    int sizeOfCache;//no of RssFeedDocument 
    private List<RssFeedDocument> listOfRssFeedDocument = null;
}

i want to find a object in this generic list in class based upon RssFeedDocument 's property FeedId.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

枯叶蝶 2024-07-27 10:44:04

使用匿名委托:

Guid feedID = ...;
RssFeedDocument document = listOfRssFeedDocuments.Find(
    delegate(RssFeedDocument rfd)
    { return rfd.FeedId == feedID; });

相同,但使用 C# 3.0 lambda:

Guid feedID = ...;
RssFeedDocument document = 
    listOfRssFeedDocuments.Find(rfd => rfd.FeedId == feedID);

Using anonymous delegate:

Guid feedID = ...;
RssFeedDocument document = listOfRssFeedDocuments.Find(
    delegate(RssFeedDocument rfd)
    { return rfd.FeedId == feedID; });

The same, but with C# 3.0 lambdas:

Guid feedID = ...;
RssFeedDocument document = 
    listOfRssFeedDocuments.Find(rfd => rfd.FeedId == feedID);
长途伴 2024-07-27 10:44:04

假设您可以使用 IEnumerable 扩展方法,我认为最简单的方法实际上是使用 Where

listOfRssFeedDocument.Where(doc => doc.FeedId == someId);

Assuming you can use the IEnumerable<T> extension methods, I think the easiest way is actually to use Where:

listOfRssFeedDocument.Where(doc => doc.FeedId == someId);
淡淡绿茶香 2024-07-27 10:44:04
List<RssFeedDocument> filteredList = listOfRssFeedDocument.Find(delegate(RssFeedDocument d) { return d.FeedId = x; });

参考:列表.Find

List<RssFeedDocument> filteredList = listOfRssFeedDocument.Find(delegate(RssFeedDocument d) { return d.FeedId = x; });

Reference: List<T>.Find

傾城如夢未必闌珊 2024-07-27 10:44:04

如果您无法使用 LINQ,您可以使用以下内容:

RssFeedDocument fd = ListName.Find(delegate(RssFeedDocument doc) { return doc.FeedID == someVariable; });

If you aren't able to use LINQ you could use something along the lines of:

RssFeedDocument fd = ListName.Find(delegate(RssFeedDocument doc) { return doc.FeedID == someVariable; });
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文