2011-07-21 7 views
1

Vous avez une WinForm dans le projet A (projet principal) et qui héberge un contrôle utilisateur WPF et est maintenu sous différents projet appelé BC#, WPF intégré contrôle utilisateur

En cliquant sur un bouton sur le contrôle de l'utilisateur , Je voulais interroger le serveur qui est dans le projet "C" et récupérer des données et le montrer sur le contrôle de l'utilisateur wpf hébergé. Je sais que une mauvaise pratique de codage pour mettre une référence au projet de « C » dans le projet B qui ne comprend que des contrôles personnalisés .Tout thots alternatifs seraient appréciés ...

+0

Pouvez-vous être un peu plus précis sur ce que vous voulez faire? Qu'avez-vous essayé? –

+0

voulait essentiellement montrer certaines données sur le contrôle de l'utilisateur wpf en le récupérant du serveur. – Anees

+0

Pourquoi pensez-vous qu'il est mauvais de mettre une dépendance qui est (apparemment) nécessaire pour fournir vos fonctionnalités requises? –

Répondre

3

Pour minimiser les dépendances de projet, créez une interface dans votre projet de contrôle (B) qui reflète les opérations requises par votre contrôle. Implémentez une classe dans votre projet client (A) qui implémente cette interface (qui obtiendra les informations dont vous avez besoin à partir de votre projet de données (C) et le transmettra par la méthode d'interface).

Transmettez la classe de service (implémentant l'interface) construite en A à votre contrôle B lors de l'initialisation du contrôle.

0

Vous faites un autre projet qui est juste une bibliothèque de classes pouvant être partagée entre les trois projets. Vous allez mettre les interfaces et/ou les implémentations de classes qui doivent être partagées entre les projets dans la bibliothèque de classes, puis utiliser celles du serveur et les projets de contrôle utilisateur.

Questions connexes