В дополнение к ответу @ SwDevMan81, с которым я согласен, я бы сказал, что установка путей вывода и ссылок может помочь избежать такого поведения для библиотек классов.Например, ваше приложение ссылается на библиотеку классов, которую вы в данный момент пишете, и вы вносите некоторые изменения в эту библиотеку, на которую ссылаются, но эти изменения не отображаются.
Что происходит, если компилятор будет копировать локально (вдиректория вывода проекта) связанная DLL и пока она там не будет обновлена.Вы можете проверить это, щелкнув правой кнопкой мыши на указанной сборке, а затем нажав Свойства.Посмотрите на свойство Filepath.Если вы видите, что он не соответствует вашему фактическому пути к файлу, то вам нужно будет установить соответствующий путь ссылки в свойствах проекта, а затем удалить и удалить фактическую ссылку, чтобы добавить ее там, где находится фактическая сборка, то есть гдеваша выходная папка библиотеки классов установлена.Таким образом, всякий раз, когда вы обновляете свою библиотеку классов, ваше приложение получает обновление автоматически.Вот пример:
Ссылки на проект приложения : ClassLibrary1.dll
сборка.
Как только вы сгенерируете приложение, файл ClassLibrary1.dll будет скопированв выходной каталог вашего приложения.Предположим, C:\Open\Projects\ApplicationProject1\Debug\bin
.Таким образом, этот каталог теперь будет содержать файл ClassLibrary1.dll .
- Вы переписываете метод, чтобы вести себя совершенно иначе;
- Вы регенерируете ClassLibrary1сборка;
- Вы перезапускаете свое приложение (помните, что файл уже существует!);
- В конце задаетесь вопросом, почему изменения не вступили в силу?Это связано с тем, что ваше приложение ссылается на кэшированную сборку в папке
Debug\bin
.
Обходной путь:
- Удалите ссылку на сборку из вашего приложенияproject;
- Перейдите в свойства проекта и перейдите на вкладку Reference Path ;
- Перейдите к выходной папке ClassLibrary1, затем откройте ее;
- YourТеперь для этой библиотеки задано свойство «Ссылочный путь», затем повторно добавьте сборку ClassLibrary1 в проект приложения;
- Выполните один раз, прекратите выполнение и посмотрите, по-прежнему ли свойство Path вашей ссылочной сборки совпадает содин в свойстве Reference Path проекта;
- Все готово (если все работало нормально).C: \ Open \ Projects \ ClassLibrary1 \ Debug \ bin \ ClassLibrary1.dll
В конце концов, это может быть причиной вашей проблемы, если ваши формы GUI являются частью библиотеки классов, иРешение, которое я описал, должно работать.