При добавлении библиотеки DLL в качестве ссылки на проект ASP.Net VS2008 добавляет несколько файлов в каталог bin. Если DLL называется foo.dll, VS2008 добавляет foo.dll.refresh, foo.pdb и foo.xml. Я знаю, что такое foo.dll :-), почему VS2008 добавляет остальные три файла? Что делают эти три файла? Могу я их удалить? Нужно ли их добавлять в систему контроля версий?
Visual Studio 2008 - добавить ссылку
Ответы (5)
Контроль версий:
Бен Страуб сказал в комментарии к этому сообщению: файлы .dll.refresh должны быть добавлены в систему управления версиями, если это необходимо, в то время как файлы .xml, .pdb и, конечно же, .dll не должны добавляться.
Джон Руди объяснил, когда добавлять файл .refresh:
Почему (иногда) это хорошо? Допустим, вы находитесь в командной среде. Кто-то проверяет код на наличие foo.dll, и ваша система сборки создает новую DLL, выводя ее в общую папку на сервере. Ваш файл обновления указывает на эту серверную копию библиотеки DLL. В следующий раз при сборке VS автоматически магическим образом захватит самую последнюю и лучшую копию этой DLL.
.xml, как сказал Дэвид Мохундро:
Файл xml предназначен для комментариев XML и intellisense. Visual Studio проанализирует это и отобразит XML-комментарии, которые были добавлены при вызове методов в этих библиотеках DLL.
.pdb, как сказал Дэвид Мохундро:
PDB предназначен для отладки и символов. Если вы получите от него исключение, вы сможете получить трассировку стека и т. Д. Вы сами решаете, будет ли создаваться PDB.
.refresh из блога. сообщение о файлах .refresh:
Он сообщает VS, где искать обновленные версии dll с тем же базовым именем. Это текстовые файлы, вы можете открыть их и посмотреть, какой путь они используют.
Их цель - избавить вас от необходимости копировать новые версии самостоятельно. В VS2003 файл проекта будет содержать исходное расположение ссылки, но поскольку VS2005 не использует файлы проекта для проектов ASP.NET, это замена этой конкретной функции.
Файл обновления (так как еще никто не нашел!) Описывает, откуда взялась DLL. Это для автоматически обновляемых ссылок; всякий раз, когда вы выполняете полную сборку, VS будет искать по этому пути и копировать эту версию DLL.
Почему (иногда) это хорошо? Допустим, вы находитесь в командной среде. Кто-то проверяет код на наличие foo.dll, и ваша система сборки создает новую DLL, выводя ее в общую папку на сервере. Ваш файл обновления указывает на эту серверную копию библиотеки DLL. В следующий раз при сборке VS автоматически магическим образом захватит самую последнюю и лучшую копию этой DLL.
PDB предназначен для отладки и символов. Если вы получите от него исключение, вы сможете получить трассировку стека и т. Д. Вы сами решаете, будет ли создаваться PDB. Файл xml предназначен для комментариев XML и intellisense. Visual Studio проанализирует это и отобразит XML-комментарии, которые были добавлены при вызове методов в этих библиотеках DLL.
Я не знаю о файле обновления.
foo.pdb - это файл символов отладчика для foo.dll, он вам понадобится, иначе вы не сможете установить точку останова в этом коде.
VS2008 добавляет несколько файлов в каталог bin [...] Нужно ли их добавлять в систему управления версиями?
Ничего из каталога bin не нужно добавлять в систему управления версиями. Первое, что нужно сделать при первоначальной регистрации проекта, - это игнорировать каталоги bin и obj. Так что да, вы можете удалить эти файлы, но Visual Studio создаст их заново.