Сборка.Load и Environment.CurrentDirectory.
-
02-07-2019 - |
Вопрос
Я так понимаю, что здесь есть похожая тема:Загрузка сборок и их зависимостей
Но я что-то изменяю, и это не совсем применимо.
string path = Path.GetDirectoryName( pathOfAssembly );
Environment.CurrentDirectory = path;
Assembly.Load(Path.GetFileNameWithoutExtension(pastOfAssembly));
Есть ли какая-то реальная причина, по которой вы бы сделали это так?Не имело бы смысла просто использовать:
Assembly.LoadFile(pathOfAssembly);
Любая информация будет принята с благодарностью.
Решение
Похоже на "Отдел резервирования".
Гораздо больше кода, чем необходимо.Меньше - больше!
Редактировать: Если подумать, возможно, у загружаемой сборки есть зависимости, которые находятся в отдельной папке и могут потребоваться для использования первой сборки.
Другие советы
Это может быть необходимо при разработке службы Windows.Рабочий каталог службы по умолчанию равен %WinDir%, поэтому, если вы хотите загрузить сборку из каталога, в котором находится ваш exe-файл службы, это путь.