J'essaie de pré-extraire certaines données de clé étrangère à l'aide d'une requête linq. Un exemple rapide pour expliquer mon problème suit:LINQ: Pré-extraction de données à partir d'une seconde table
var results = (from c in _customers
from ct in _customerTypes
where c.TypeId == ct.TypeId
select new Customer
{
CustomerId = c.CustomerId,
Name = c.Name,
TypeId = c.TypeId,
TypeName = ct.TypeName, <-- Trying to Prefetch this
}).ToList();
La classe client ressemble:
[Table(Name = "Customers")]
public class Customer
{
[Column(Name = "CustomerId", IsPrimaryKey = true, IsDbGenerated = true, AutoSync = AutoSync.OnInsert)]
public int CustomerId { get; set; }
[Column(Name = "Name")]
public string Name { get; set; }
[Column(Name = "TypeId")]
public int TypeId { get; set;}
public string TypeName { get; set; }
public Confession(){}
}
Cependant LINQ ne vous permettra de le faire jeter NotSupportedException avec « la construction explicite de type d'entité « client » dans la requête n'est pas autorisé. "
Je m'approche clairement de ce problème. Tout pointeur dans la bonne direction serait le plus utile.