Nous avons une application tierce qui fournit un SDK sous la forme d'une DLL pouvant être utilisée pour développer des applications personnalisées qui se connectent à leur service. La DLL réside dans le répertoire de l'application tierce avec un tas d'autres DLL dont elle dépend. Le guide SDK fournit des instructions pour créer une application de test via Visual Studio et il est indiqué d'ajouter une référence à la DLL SDK avec Copy Local
défini sur False
. J'ai créé une application Windows Forms .NET test et ajouté une référence à la DLL selon les instructions et tout a bien fonctionné. Cependant, référencer la DLL dans une application ASP.NET entraîne une exception FileNotFoundException
pour l'une des DLL tierces dépendantes.Impossible d'utiliser une DLL tierce dans une application ASP.NET, mais fonctionne à partir d'une application Windows Forms .NET
En tant qu'expérience, j'ai essayé d'ajouter une référence à la DLL incriminée à mon projet avec Copy Local
définie sur False
, mais a obtenu la même erreur. Avec Copy Local
mis à True
il va plus loin, mais échoue ensuite sur une autre DLL. L'ajout d'une référence à cette DLL échoue quel que soit le paramètre Copy Local
. Je suppose que les problèmes ont à voir avec les différences entre la façon dont les applications .NET "standard" chargent les assemblages et les applications ASP.NET, mais je ne suis pas sûr de la façon dont je devrais résoudre ce problème.
Existe-t-il un moyen correct de référencer une DLL tierce (et ses dépendances) dans une application ASP.NET sans les placer dans le GAC ou dans le répertoire bin de l'application?
Il y a beaucoup de façons dont cela pourrait mal se passer, il n'est donc pas possible de vous donner une réponse en fonction de ce qui est dans votre question. La DLL tierce peut avoir des dépendances en C ou C++, ou peut même ne pas être conçue pour fonctionner sur ASP.NET. La façon moderne de référencer une DLL est d'utiliser NuGet (si un paquet est disponible), qui prend généralement soin des détails sales concernant le référencement de ses propres dépendances. – NightOwl888