我怎么能做像IList <T> .Contains(OtherObjectType)这样的事情?

Noc*_*ris 5 .net c# nhibernate ilist

我有以下课程:

客户

ClientCacheMedia(包含Client,Media和其他一些参数,因此它是媒体和客户端之间的链接)

媒体

客户端包含IList的位置.现在我想做的是,有办法检查这个ilist是否包含某种媒体

so:Client.ClientCacheMedia.Contains(MyMedia)

有没有办法让IList接受媒体作为匹配的对象?(我可以轻松覆盖ClientCacheMedia上的Equals属性,以检查传递的媒体是否是ClientCacheMedia.Media包含的媒体,只是Ilist不接受Contains方法中的任何其他对象.

bru*_*nde 7

IEnumerable.Any在这种情况下,您可以使用扩展方法.它可能是这样的:

Client.ClientCacheMedia.Any(cm => cm.Media == myMedia);
Run Code Online (Sandbox Code Playgroud)