2011-05-09 2 views
2

J'ai une API WCF qui est appelée par un client .net, j'essaie de renvoyer un objet Entity Framework (objet db) au client, est-ce une mauvaise pratique? Dois-je utiliser la réflexion pour vider les données dans un objet qui a moins d'accessibilité et à la place?WCF - Entity Framework, renvoi d'objets au client

L'erreur que je reçois lorsque le client appelle l'API est:

La connexion du nom spécifié est soit introuvable dans la configuration, pas destiné à être utilisé avec le fournisseur EntityClient, ou non valide .

toute aide serait appréciée.

+0

Pouvez-vous montrer comment vous ouvrez la connexion et quelle est votre chaîne de connexion? –

+0

en utilisant (abcEntities abc = new abcEntities()) { – sam

+0

sam

Répondre

3

Si votre modèle d'entité s'aligne correctement sur ce que vous utiliseriez comme Data Transfer Object sur le réseau, alors je dirais que oui, il n'y a rien de mal à renvoyer l'objet entité.

Cependant, je recommanderais d'utiliser le POCO Entity Generator pour rendre les entités plus légères (afin qu'elles s'alignent mieux avec ce que les DTO devraient être). En ce qui concerne votre erreur, il s'agit d'un problème distinct, lié à ne pas pouvoir trouver la connexion nommée appropriée dans le fichier de configuration ou la chaîne de connexion existante mais n'étant pas configurée correctement (comme l'indique l'erreur).

1

Nous retournons EF objet sur WFC sans aucun problème. Cependant, tous vos clients sont des clients .Net. Vous risquez de rencontrer des problèmes si vous utilisez des entités d'auto-suivi sur des clients non-Net (les entités d'auto-suivi sont utiles pour activer facilement les modifications apportées côté client, c'est-à-dire sans contexte).