Le rendement mot-clé est un de ces mots-clés en C# qui continue à mystifier moi et je n'ai jamais été convaincu que je suis de l'utiliser correctement.
De deux morceaux de code, qui est le préféré et pourquoi?
Version 1: taux de retour à l'Aide de
public static IEnumerable<Product> GetAllProducts()
{
using (AdventureWorksEntities db = new AdventureWorksEntities())
{
var products = from product in db.Product
select product;
foreach (Product product in products)
{
yield return product;
}
}
}
Version 2: Retour à la liste
public static IEnumerable<Product> GetAllProducts()
{
using (AdventureWorksEntities db = new AdventureWorksEntities())
{
var products = from product in db.Product
select product;
return products.ToList<Product>();
}
}