Ответ 1
Отредактируйте файл .csproj
и измените элементы <HintPath>
с абсолютных путей на относительные пути.
Я скомпилировал мой проект, и некоторые из моих добавленных проектов .dlls имеют абсолютные ссылки. Когда я пытаюсь запустить проект на другой машине, он ищет DLL файлы из исходного пути проекта.
Как я могу заставить проект искать DLL файлы, используя относительный путь?
Отредактируйте файл .csproj
и измените элементы <HintPath>
с абсолютных путей на относительные пути.
Вы также можете написать свой обработчик для разрешения сборок. В простейшей форме это может выглядеть так:
AppDomain.CurrentDomain.AssemblyResolve += AssemblyResolveHandler;
..
static Assembly AssemblyResolveHandler(object sender, ResolveEventArgs args)
{
string assemblyPath = "yourpath";
return Assembly.LoadFrom(assemblyPath + args.Name);
}
Другой вариант - добавить запись в App.config:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<probing privatePath="yourpath"/>
</assemblyBinding>
</runtime>