Почему.Содержит медленный? Самый эффективный способ получить несколько объектов по первичному ключу?

Какой самый эффективный способ выбрать несколько сущностей по основным key?

public IEnumerable<Models.Image> GetImagesById(IEnumerable<int> ids)
{

    //return ids.Select(id => Images.Find(id));       //is this cool?
    return Images.Where( im => ids.Contains(im.Id));  //is this better, worse or the same?
    //is there a (better) third way?

}

Я понимаю, что могу провести несколько тестов производительности для сравнения, но мне интересно, есть ли на самом деле лучший способ, чем оба, и я ищу некоторое понимание того, в чем разница между этими двумя запросами, если таковые имеются , после того, как они были «переведены».

57
задан spender 30 November 2015 в 16:12
поделиться