Я пишу код, который выберет строковые ключи из массива ApiIds, которые не являются собственностью ApiId из объектов результатов.Выберите String, который не является свойством другого объекта
Я написал следующий код, но он выглядит излишним для меня, есть ли способ объединить это в один оператор и не преобразовать HashSet объектов в другой HashSet строк?
var resultsCached = new HashSet<string>(results.Select(x => x.ApiId));
var missingResults = apiIds.Select(x => !resultsCached.Contains(x));
Спасибо.
этот способ выглядит разумным для меня. почему вы хотите его изменить? –
Короче не обязательно лучше ... особенно в тех случаях, когда любая магия за коротким кодом не совсем понятна .. (а не только оригинальный автор, но и любой, кто будет читать и поддерживать этот код позже). Примером может быть, в зависимости от того, что означает ilya, и не конвертировать HashSet объектов в другой HashSet строк? " ответы с использованием «Исключить» ниже, могут быть или не быть подходящими. –