Дано:Transform словарь к другому с другим типом ключа
class KeyType1{...}
class KeyType2{...}
class ValueType{...}
public KeyType2 Lookup(KeyType1 value)
{
// Returns a unique value of KeyType2 or otherwise, null
}
Есть ли аккуратный LINQ способ преобразования:
IDictionary<KeyType1,ValueType>
==>IDictionary<KeyType2,ValueType>
следующие важные моменты:
- № 2 значения
KeyType1
показать на картеKeyType2
- Редактировать Возможно,
Lookup
может возвращать null, т. Е. Отображение может быть неполным. В таких случаях эти записи должны быть исключены из нового словаря
Примечание: редактирование: 'Lookup' может возвращать null –
Обновлен мой ответ. Сложно изменить требования после того, как люди уже ответили. Я только случайно прочитал эту новую проблему (нулевой возвращаемый Lookup). Если дальнейшие изменения произойдут, пожалуйста, оставьте мне комментарий :) –
Да, я добавил его сразу после этого, я ждал, чтобы люди заметили, а не опубликовали тот же комментарий по 3 ответам (все они были даны очень быстро) –