Question

Pourquoi dans Linq to Entities, dois-je spécifier des relations avec Include (chaîne)? Linq to SQL n'est pas nécessaire.

S'agit-il d'un choix de développeurs ou d'une limitation?

Un autre problème, Linq to SQL est plus "POCO". classe, Linq to Entities est trop complexe.

Était-ce utile?

La solution

Linq to Entities (Entity Framework) est beaucoup plus complexe que Linq-To-SQL - mais il est plus complexe car il offre beaucoup plus de flexibilité.

Dans Linq-to-SQL, vous obtenez un mappage 1: 1 entre les tables de base de données et vos classes .NET en mémoire. C'est bien pour beaucoup de scénarios simples, et c'est là que Linq-to-SQL brille vraiment.

Mais dans les scénarios d'entreprise plus vastes et plus complexes, cela pourrait ne pas être suffisant. Entity Framework et donc Linq-to-Entities vous permettent d’avoir un modèle conceptuel séparé (vos objets .NET) qui n’est pas nécessairement lié à votre structure de base de données sur une base 1: 1 (héritage, fusion de plusieurs tables dans un seul objet et plus de ceux). Bien que cela puisse sembler trop compliqué et complexe, dans de nombreux scénarios avancés, il s'agit d'une sauvegarde de la vie et d'une fonctionnalité indispensable.

Donc, je ne pense pas que vous puissiez comparer Linq-to-SQL et Linq-to-Entities (EF) l'un avec l'autre - ils sont vraiment conçus pour des espaces de problèmes différents et séparés, avec des exigences différentes et donc également différentes approches / styles de programmation.

Si Linq-To-SQL est assez bon pour vous et pour vos besoins, c'est bien, utilisez-le bien!

Marc

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top