2010-04-28 11 views
3

L'ancien code, comme nous le savons, est dangereux car la mise en page de l'interface graphique et la logique métier sont mélangées en une seule. Séparer les deux peut être une tâche fastidieuse et sujette aux erreurs. Y a-t-il un outil qui peut le faire pour moi?Y at-il un outil qui peut convertir la conception de formulaires C# 1.1 à la norme plus récente?

Merci.

EDIT: La façon assez évident de garder l'interface utilisateur et la logique séparée est par l'introduction d'une classe partielle. J'espère que cela clarifie la question. Je suppose que j'essaie simplement d'aller de 1.1 à 2.0. Simplement ouvrir et sauvegarder l'ancien design dans VS2008 ne fait pas ce que je veux.

+0

De quelle norme récente parlez-vous? –

+0

Donc, le simple fait d'ouvrir la solution dans VS2010 ou VS2008 ne vous suffit pas? S'il vous plaît dites quoi d'autre vous avez besoin. –

Répondre

3

Aucun outil, mais facilement réalisé avec l'édition de texte couper-coller. Ajoutez un nouveau formulaire à votre projet. Dans l'Explorateur de solutions, ouvrez le nœud en regard du formulaire et double-cliquez sur le fichier Designer.cs. Coupez et collez la méthode InitializeComponent() de votre ancien formulaire dans ce fichier. Coupez et collez le reste de votre code. Supprimez l'ancien formulaire, modifiez le nom de la nouvelle classe.

1

n °. Sry à dire mais il n'y a pas un tel outil, c'est encore un travail manuel. Si vous envisagez de le faire de toute façon je suggérerais de se pencher sur le développement WPF, car la séparation est beaucoup plus facile à réaliser là-bas.

+0

Pourquoi la séparation est-elle plus facile avec WPF? Je n'ai jamais eu de problèmes pour garder la séparation des préoccupations avec WinForms ou WebForms. "Just Say No" à la logique métier sur la page/le formulaire. –

+0

Pour moi, cela concerne principalement la reliure plus facile et plus puissante. Oui, une grande partie de la liaison disponible aujourd'hui dans WPF était possible avec WinForms mais c'était beaucoup plus compliqué à installer et il enregistrait les fichiers codebehind. Mais c'est une chose personnelle, je suppose que je considère comme une bonne liaison et une partie de la validation de l'entreprise inclus. – ntziolis

2

Il n'y a pas de "standard", mais beaucoup de standards comme les manières de séparer la logique de l'interface utilisateur. Cela vous force à concevoir un chemin particulier. Il est donc un peu impossible de reconcevoir automatiquement votre logiciel. Le meilleur que vous ayez, c'est de refactoring des outils, vérifiez quelque chose comme Resharper, rend un peu plus sûr de faire quelques transformations.

+1

+1, ReSharper 5 a une action "Déplacer une déclaration vers une autre partie de type", ce qui déplace la déclaration sélectionnée vers une autre classe partielle. –