C#Dictionary ContainsValue按对象属性查找

Dar*_*der 0 .net c# collections dictionary

我有 Dictionary<long, Location> PostalCodes.

当我向这个词典添加新元素时,我想查找这个词典,如果Location.PostalCode不在这个词典中,我想插入它.否则我想跳过它.因此,需要知道PostalCode是否已经在Collection中.不能用它作为关键.

这该怎么做?

谢谢.

Jon*_*eet 5

听起来你需要另一个字典,它确实使用它作为键 - 基本上是双向映射.至少,如果你希望它表现良好的话.您可以查看地图中的每个值,但这将是O(n)操作.

(或者,如果你这样做一次,只需HashSet<Location>为你正在使用的所有位置创建一个.你实际上不需要long通过它的声音来进行反向查找.)