Quelqu'un at-il eu ce problème? J'essaie d'obtenir des objets de la base de données et de créer un poco complexe, mais j'ai un problème de distribution.
La propriété Account sur le type de message poco est un type de compte poco et il me dira que quel que soit le premier type de champ ne peut pas être converti en PocoAccount, donc dans l'exemple ci-dessous, AccountID est un int int cant 'être cast à PocoAccount.Sélectionnez nouveau pour créer un objet complexe avec des lancers imbriqués cast exception
var result = (from a in DbAccount.All()
join m in DbMessage.All() on m.AccountID equals a.AccountID
select new PocoMessage {
Account = new PocoAccount {
AccountID = a.AccountID,
FirstName = a.FirstName,
LastName = a.LastName
},
MessageID = m.MessageID,
Subject = m.Subject,
Body = m.Body
});
Cela ne semble pas du tout correct! Votre code sélectionne tous les éléments DbAccount, tous les éléments DbMessage et effectue la jointure à l'aide de LinQ aux objets. Cela a un impact sur les performances! Pour éviter l'exception, vous devez appliquer la méthode ToList appel APRES votre jointure et effectuer la sélection en utilisant LinQ aux objets. – saintedlama