2010-10-11 24 views
2

J'ai une application XBAP (WPF on browser) que je veux exécuter en tant qu'application autonome et également dans le navigateur. Comment puis-je faire cela sans faire beaucoup de changements de code, puisque nous allons faire beaucoup de modifications dans le code de toute façon. Et ce n'est pas une bonne idée de maintenir 2 bases de code différentes pour cela.Utilisation de la même application WPF pour le mode autonome et sur le Web

+0

Pourquoi avez-vous besoin d'une application autonome si vous avez une application de navigateur Web? Y a-t-il une différence fonctionnelle? –

+0

J'ai besoin de l'application de 2 façons différentes, car un maître hébergera le Web où il sert et "maître" but. Sinon, les utilisateurs devraient pouvoir télécharger l'application localement et l'utiliser. Est-il possible d'installer une application XBAP en utilisant ClickOnce? Si oui, alors seul le web suffira. –

Répondre

2

J'aurais 2 projets sous une solution. Un pour Project.Web et un pour Project.Desktop. En supposant que vous avez déjà Project.Web en cours et que vous ajoutez Project.Desktop comme nouveau, utilisez "Ajouter comme lien" de Visual Studio lors de l'ajout de fichiers de Web à Desktop. Cela va maintenir 1 copie de chaque fichier.

hôte votre interface principale dans un UserControl, puis ajouter que UserControl au Project.Web.Page1 (ou quelque chose comme ça) et Project.Desktop.MainWindow. Si vous modulez suffisamment votre programme, vous n'aurez pas à vous soucier de maintenir 2 projets, car ils seront tous les deux minces coques sur votre UserControl principal.

+0

+1 - Pour le "Ajouter en tant que lien". Je ne peux pas croire tout ce temps ce que je voulais était juste en face de moi (seulement légèrement caché). –

+0

C'est trop caché IMO. Il devrait y avoir un bouton "Ajouter en tant que lien" juste à côté du bouton "Ajouter". Chaque développeur se souvient où il était au moment où ils ont été brûlés par ce bouton caché. – bufferz