2016-09-01 2 views
1

Je regarde dans le code source de Kestrel et j'ai trouvé quelque chose d'intéressant. De sa branche dev, vous pouvez voir qu'il existe un fichier de classe autonome nommé HttpClientSlim dans le dossier /test/shared qui n'appartient à aucun projet. Et c'est utilisé dans quelques projets. Je cloné le code source, l'explorateur de solution ressembleComment fonctionne un fichier de classe "autonome"?

this

comment le compiler?

Répondre

3

Lorsque vous tentez d'ajouter un élément existant à un projet, il existe une petite liste déroulante à côté du bouton "Ajouter" qui vous permet d'ajouter un lien.

Cela signifie que si vous souhaitez qu'une classe soit incluse dans plusieurs projets, vous pouvez conserver le fichier source réel au même endroit, mais "lier" à plusieurs projets.

Il enregistre le code de copie/collage, mais le projet le compile dans le binaire comme s'il était local.

enter image description here

Notez que pour les utilisateurs de VS2015, vous devrez peut-être modifier manuellement project.json pour obtenir les mêmes fonctionnalités, ceci est décrit plus en détail dans ce Q/R:
When adding an existing item with "Add as Link", this file is not compiled in VS2015?

+0

Pourquoi je don Ne voyez-vous aucune liste déroulante à côté du bouton "Ajouter" dans la communauté VS2015? –

+0

@DannyChen c'est seulement quand vous choisissez "Ajouter un élément existant". Évidemment, si vous choisissez "Ajouter un nouvel élément", vous ne pouvez pas créer de lien vers un fichier existant. J'ai mis à jour avec une capture d'écran. – Jamiec

+0

Et je viens de remarquer que ma description l'a fait sortir dans l'autre sens. Désolé à ce sujet – Jamiec