Je fais le passage de Linq-to-SQL à Linq-to-Entities et dans le processus de conversion rencontré l'erreur "LINQ to Entities does ne reconnaît pas la méthode 'System.String Format (System.String, System.Object, System.Object) méthode' et cette méthode ne peut pas être traduite dans une expression de magasin ". Le code suivant est le coupable. Je comprends que cela doit faire avec la génération de type dynamique que j'utilise ci-dessous. Comment puis-je toujours utiliser le type dynamique et utiliser L2E?Linq to Entities - NotSupportedException - type dynamique - chaîne.Format
var query = _db.Persons.Where(p => p.PersonId == PersonId);
if (query.Count() > 0)
{
var data = query.Join(_db.Users, p => p.UserId, u => u.UserId, (p, u) => new
{
Id = p.PersonId,
Name = string.Format("{0} {1}", p.FirstName, p.LastName),
Phone = p.Phone,
Email = u.Email
}).Single();
return data;
}
EDIT: OK , se sentent un peu stupide après @John Hartsock m'a montré la solution simple ...
si je voulais faire une manipulation de chaînes plus complexes?
Jeez - la simplicité :) ... si je voulais faire des manipulations de chaînes plus complexes, que suggérez-vous? –
@ Ed.S. Heureux que je pourrais aider j'ai mis un lien là-bas qui montre la traduction de la fonction de LINQ aux entités à SQL http://msdn.microsoft.com/en-us/library/cc716715.aspx –