2009-10-05 10 views
0

En fait, j'utilise des références pour référencer deux DLL externes pour mon projet. Je veux mettre en place le chemin en référence mais forcer C# pour rechercher des DLL dans mon chemin d'application.dll référence de app.config?

J'ai créé un dossier dans myapp ".netlibs" et y ai placé mes dlls et les ai retirées de la section Références.

Je mets cela dans app.config:

<runtime> 
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
    <probing privatePath=".netlibs" /> 
</assemblyBinding> 

Mais il ne fonctionne pas?

Est-ce que vous connaissez les gars si quelque chose me manque?

merci d'avance.

+0

Veuillez décrire "ne fonctionne pas". Avez-vous une erreur? Si vous ne les référencez plus, comment les chargez-vous? S'il vous plaît nous montrer du code. –

+0

Salut Lars. Je veux dire que cela me donne une erreur en essayant de compiler. Le type ou l'espace de noms "xxxxxx" n'a pas pu être trouvé .... –

Répondre

0

Le sondage d'assemblage n'est disponible qu'au moment de l'exécution. Au moment de la compilation, vous avez toujours besoin d'une référence à l'assembly externe dans votre projet.

Ce que je peux comprendre de votre commentaire est que vous essayez de compiler votre projet sans la référence.

EDITER après un commentaire: Placez les références communes dans le contrôle de source, quelque part à un niveau supérieur et faites-les référencer. Si vous ouvrez votre fichier csproj après avoir fait la référence, les chemins doivent être dynamiques, par exemple: ../../References/MyReference.dll. Chaque développeur devrait faire un get plus tard des assemblées.

Une autre option consiste à les placer dans le GAC sur chaque machine de développement.

+0

Salut Gerrie.Vous avez raison à propos de ma compilation. Si je mets une référence comme: c: \ development \ myapp \ .netlibs \ CSzip.dll la compilation et l'exécution c'est ok. Mais si mon collègue prend mon projet et le place dans: c \ dev \ myapp la référence ne sera plus la même: | Alors, comment va-t-il compiler et exécuter le projet? –

+0

ok merci pour l'info supplémentaire. –

+0

Merci. Très bonne idée de mettre le dossier des dlls dans la racine de l'application et ajouter une référence à celui-ci. –

Questions connexes