Вопрос

При добавлении DLL в качестве ссылки на проект ASP.Net VS2008 добавляет несколько файлов в каталог bin. Если DLL называется foo.dll, VS2008 добавляет foo.dll.refresh, foo.pdb и foo.xml. Я знаю, что такое foo.dll :-), почему VS2008 добавляет остальные три файла? Что делают эти три файла? Могу ли я удалить их? Нужно ли их добавлять в систему контроля версий?

Это было полезно?

Решение

Контроль версий:

Бен Штрауб сказал в комментарии к этому сообщению: файлы .dll.refresh должны быть добавлены в систему контроля версий при необходимости, а .xml , .pdb и, конечно, файлы .dll добавлять не следует.

Джон Руди объяснил, когда добавлять файл .refresh :

  

Почему это хорошо (иногда)?   Допустим, вы в команде   среда. Кто-то проверяет код   для foo.dll и вашей системы сборки   создает новую DLL, выводя ее в   общий доступ к файлам на сервере. Ваше обновление   файл указывает на эту серверную копию   DLL. В следующий раз, когда вы построите, VS будет   автоматически волшебным образом захватить последнюю и   лучшая копия этой DLL.

.xml , как сказал Дэвид Мохундро:

  

XML-файл предназначен для комментариев XML   и интеллигентность. Visual Studio будет   разобрать и отобразить XML   комментарии, которые были добавлены при вызове   методы в этих библиотеках.

.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, которые были добавлены при вызове методов в этих библиотеках.

Я не знаю о файле обновления.

foo.pdb - это файл символов отладчика для foo.dll, вы захотите его или не сможете установить точку останова в этом коде.

  

VS2008 добавляет несколько файлов в каталог bin [...] Нужно ли их добавлять в систему контроля версий?

Ничего в каталоге bin не нужно добавлять в систему контроля версий. Первым делом при первоначальной проверке проекта следует игнорировать каталоги bin и obj. Да, вы можете удалить эти файлы, но Visual Studio создаст их заново.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top