J'ai une image de classe existante qui est largement utilisée dans mon application. J'ai besoin de retourner une liste générique d'images (List) vers le frontend mais comme il n'y a pas de proc stocké dans la base de données de 3ed party, je dois utiliser Linq to Sql.Convertir le modèle linq en liste générique
J'ai créer un fichier dbtm de la base de données Je Quering dans mon DAL qui ressemble à:
ImageCat
ImageId
Name
Width
DateModified
Height
CatId
Ma classe d'image est la suivante
public class Image
{
public int Id { get; set; }
public string Name { get; set; }
public int Width { get; set; }
public int Height { get; set; }
}
Mon LINQ to Sql est la suivante :
var imageList = (from ic in db.ImageCats
where ic.CatID.Contains(category)
select ic).ToList();
var finalImageList = new List<Image>();
foreach (ImageCat ic in imageList)
{
Image image = new Image();
image.Id= ic.ImageID;
image.Height = (int)ic.Height;
image.Name = ic.Name;
image.Width = (int)ic.Width;
finalImageList.Add(image);
}
Je ne veux pas être en boucle sur le résultat linq à Sql pour configurer ma liste. Y a-t-il un moyen plus facile. Quelle est la meilleure pratique? Je n'aime pas l'idée d'exposer mes classes dbml à la couche de présentation.
Merci, fonctionne très bien – skyfoot