Итак, у меня VS 2008 и SVN. Когда я «перестраиваю все», некоторые из моих .dll исчезают из папки bin.
У меня есть эти .dll в папке библиотеки, и я на них ссылаюсь.
Когда я иду опубликовать приложение, публикация не выполняется, я думаю, что они связаны. Когда я перезагружаю свой web.config (что-то меняю и сохраняю), эта ошибка исчезает. Однако опубликовать все равно не удается.
Когда я захожу в папку и обновляю, svn, конечно, возвращает их все обратно, но потом это происходит снова и снова.
Спасибо.





Похоже, процедура сборки удаляет содержимое вашего каталога bin при сборке.
Я не понимаю, где вы говорите, что ссылаетесь на них из папки библиотеки - и они также существуют в каталоге bin.
Ваша публикация может быть неудачной по другим причинам - лучше всего опубликовать ошибки.
Обновление SVN возвращает файлы к последней версии, поэтому, если у вас нет файла, последняя версия - это та, которая существует в вашем репозитории.
Что нужно проверить:
Вероятно, вы получаете ошибки в своей сборке - похоже, что DLL на самом деле выводятся из других проектов в вашем решении, поэтому вам следует проверить, правильно ли они строятся или выводятся в другой каталог, а не в папку bin.
В вашем репозитории Subversion, вероятно, не должно быть никаких двоичных или промежуточных файлов, таких как dll, lib, exe, suo, ncb и некоторых других, но это основные из них.
Опубликуйте здесь более подробную информацию - судя по звуку, вы можете упустить ошибки, которые не публиковали здесь.
нет, строю нормально, индивидуальные проекты строятся нормально. Я согласен с тем, что добавление некоторых .dll - не самая лучшая идея, но не думаю, что их удаление поможет.
Вам необходимо указать «Копировать локально» для ваших ссылок, это скопирует их из папки библиотеки в ваш каталог bin. Обычно вам следует хранить только одну копию DLL в системе управления версиями (в папке библиотеки). Если у вас есть управляемый источник папки bin, вы можете столкнуться с проблемами при создании.
Я видел это раньше при использовании Rebuild - я исправил это, пометив эти ссылочные dll как ReadOnly в их атрибутах Explorer.
Да, это хакерское приложение, но оно уберегло VS от моих dll!
Я предполагаю, что под папкой «Bin» вы подразумеваете место сборки, в котором Visual Studio собирает исполняемую версию вашего приложения.
В общем, я обнаружил, что внесение изменений в папку Bin вручную - это хороший способ столкнуться с «новым миром боли». Мои проблемы исчезли, как только я позволил Visual Studio делать с каталогом все, что она хотела, и оставил это в покое.
Если в вашем проекте есть ссылки на библиотеки DLL, пометьте их как «Копировать локально» (выберите их в обозревателе решений, настройте на панели «Свойства»), и Visual Studio обеспечит их копирование за вас.
Примечание: поскольку каталог Bin управляется Visual Studio и полностью воспроизводится, я предлагаю, чтобы он (и его родственный объект Obj) не находился в системе контроля версий.
У меня была аналогичная проблема, но на DLL была ссылка из папки bin, как только я добавил ссылку и установил для параметра «Копировать локально» значение false, она перестала удалять ее. Спасибо!
Вероятно, у вас есть веб-сайт по умолчанию, а не проект веб-приложения.
Что это за веб-проект? Проект веб-приложения (с файлом .csproj) или стиль папки / 2005 (без .csproj)?