Je travaille avec WPF et j'ai souvent la nécessité d'obtenir le nom de noms de noms et l'assemblage d'une classe donnée. Mais je ne sais pas comment faire ça. p>
Alors, comment pouvons-nous obtenir les noms lors de la navigation dans les classes de l'explorateur de solution ou / et lors de la modification des codes de la classe? S'il vous plaît aider! P>
4 Réponses :
Ceux-ci devraient vous donner ce que vous êtes après: Je vois que vous venez d'ajouter une note à votre question concernant "lors de la navigation des classes de l'explorateur de solutions", le simple La réponse est que, autant que je sache, vous ne pouvez pas parce que ce n'est pas ce que l'explorateur de solution est pour (c'est là pour parcourir les fichiers dans une solution, pas ce qui est contenu à l'intérieur d'eux) et aussi parce que: P> Vous voudrez peut-être voir si la "vue de la classe" vous donne ce que vous voulez, mais je soupçonne que ce ne sera pas. p> p>
Bonjour Rob, je cherche une solution sans codage. Merci quand même.
@NAM GI VU, j'ai ajouté une mise à jour pour prendre en compte votre ajout à la question concernant l'explorateur de solutions.
Je vois. J'ai essayé dans la vue de la classe mais aucune aide là-bas. J'ai mis à jour pour ajouter le cas: lors de la modification des codes de la classe.
Vous avez besoin de Là, vous verrez toutes les méta-informations de types. P> Navigateur d'objets Code>. Appuyez sur CTRL KBD> + alt kbd> + j kbd>. p>
Pouvez-vous expliquer plus sur les méta informations que je devrais rechercher?
Vous pouvez utiliser la fenêtre Visual Studio Immédiate em> comme moyen rapide d'obtenir le nom qualifié de montage pour l'un des projets de solution. P>
IIRC, ces étapes doivent fonctionner: p>
La fenêtre immédiate em> dépend de l'évaluation de l'expression du temps de conception
Ce qui à tour de rôle dépend du processus d'hébergement Visual Studio, vous devez donc l'avoir activé, par défaut déjà. P>
En outre, j'ai fait des tests rapides et le nom de la classe suffisait dans tous les cas, sauf lorsque je l'ai essayé sur VS 2008, ce qui m'apprend à fournir le
typeof (classnameofstep1) .AssemblblyqualifeName code> et appuyez sur Entrée kbd>. LI>
ol>
Fullname code> du type. Donc, si
Nom code> entraîne une erreur Utilisez le nom
code> qualifié avec l'espace de noms. P>
J'ai essayé, mais j'ai eu une erreur "Le type de type ou d'espace de noms" myClass "n'est pas valide dans cette lunette"
@Nam gi Vu, au lieu de myClass code> essayer d'utiliser
myNamespace.myclass code>.
@ANGELO: Je mets dans l'espace de noms complet de la classe mais ne fonctionne pas non plus. J'ai eu "CCC 'n'existe pas dans l'espace de noms" A.BB "" lorsque je passe dans type de ".
@NAM GI VU Assurez-vous que votre application est en cours d'exécution
@NAM GI VU, j'ai mis à jour ma réponse avec une étape manquante (2). Vérifiez si cela résout l'erreur. Il devrait le résoudre, mais même s'il fait que cette nouvelle étape supprime la simplicité de la solution.
@ANGELO: Je l'ai eu maintenant. Grâce à une idée de collègue de la mine: Besoin d'exécuter la solution et pendant l'exécution de l'application, procédez à vos étapes de votre suggestion ci-dessus. Merci Angelo.
Vous n'avez pas besoin de courir les gars. Juste faire l'étape 2 (définissez le projet de démarrage).
Vous pouvez utiliser F # InterAtive, il suffit d'ouvrir la fenêtre (vue -> d'autres fenêtres -> F # interactive) et essayez ce qui suit: Il y a quelques assemblages référencés automatiquement comme le système. Si vous devez obtenir le nom d'un autre assemblage, vous devez ajouter la référence en premier (comme le modèle de service par exemple). P> > #r "System.ServiceModel.dll";;
--> Referenced 'C:\Windows\Microsoft.NET\Framework\v4.0.30319\System.ServiceModel.dll'
> typedefof<System.ServiceModel.ICommunicationObject>.Assembly.FullName;;
val it : string =
"System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"