J'utilise EF4 et j'ai deux entités que je souhaite mapper au mêmePOCO
. Je ne suis pas sûr de savoir comment je peux faire ça.Entity Framework v4 -> besoin d'aide avec POCO et Entités
Entité 1 → Foo (ce qui représente une FOO de table dans la db)
POCO → FooEntité 2 → FooView (ce qui représente une FooView vue dans la db)
POCO → Foo
Je comprends que je dois faire quelque chose comme
IObjectSet<Foo> _foos = CreateObjectSet<Foo>();
// Note spelling of the Entity.
IObjectSet<Foo> _foosView = CreateObjectSet<Foo>("FooViews");
Mais quand je tente cela, il ne compile, mais il échoue à l'exception suivante:
System.ArgumentException: System.ArgumentException: Le type d'entité spécifié, 'MyProject.Core.Foo', ne le fait pas correspond au type 'EntityFramework.SqlServerModel.FoosView' de l'EntitySet 'FoosViews'.
Des suggestions?
Salut Richard - Tas merci pour ce poste. Il y a beaucoup de données ici, donc je vais essayer de travailler le plus rapidement possible avant la fin du temps imparti. Dans votre première étape, dites-vous que je crée deux poco - l'un appelé 'Foo' et l'autre' FooView'? En outre, lorsque votre message parle de «types d'entités», est-ce que je fais référence à ma classe POCO? et 'plusieurs ensembles d'entités ', cela signifie mes * tables * qui sont sur mon concepteur (par exemple, table Foo et vue FooView)? –
Dans mes exemples, je n'utilisais pas de POCO, mais le concept est le même. L'essentiel est de conserver deux ensembles d'entités distincts, et deux EntityTypes ** de stockage ** différents mais un seul ** EntityType conceptuel **. –
Les EntityTypes conceptuels sont les mêmes que vos POCO. Stockage EntityTypes sont la représentation de la table de base de données. –