Нет, я бы так не поступил. Я бы подумал о поддержке двух словарей, Label -> HashSet<Resource>
и Resource -> HashSet<Label>
. Это даст вам быстрый поиск в обоих направлениях. Очевидно, вы должны заключить это в капсулу.
Кроме того, что бы вы ни делали, вы не должны вставлять это в ваш Resource
. Это ресурс, и он поддерживает свои ярлыки? Единственная ответственность и все такое.