当添加一个DLL作为一个ASP.Net项目的引用,VS2008添加了几个文件复制到bin目录。 如果DLL被称为foo.dll,VS2008增加foo.dll.refresh,foo.pdb和foo.xml。 我知道foo.dll是什么:-),为什么VS2008添加其他三个文件? 什么这三个文件吗? 我可以删除它们? 他们需要在源代码控制添加?
Answer 1:
源控制:
本斯特劳布在这个信息的评论中表示: .dll.refresh
如果需要,文件应该被添加到源控制,而.xml
, .pdb
当然和.dll
文件不应添加。
约翰·鲁迪解释时添加.refresh
文件:
为什么这是一件好事(有时)? 比方说,你在团队环境是。 有人检查在foo.dll代码,并构建系统构建了一个新的DLL,在文件共享输出它的服务器上。 您刷新文件指向DLL的该服务器的副本。 你建立接下来的时间,VS会自动神奇地抓住该DLL的最新和最伟大的副本。
像大卫Mohundro .XML说:
xml文件是有XML注释和智能。 Visual Studio将解析并显示,当你调用这些DLL方法添加XML注释。
.PDB像大卫Mohundro说:
在PDB是那里调试和符号。 如果你从它抛出一个异常,你就可以得到踪迹,等你在选择PDB是否被内置的控制。
.REFRESH 从博客帖子大约.refresh文件:
它告诉VS到哪里寻找具有相同基名的dll的更新版本。 他们是文本文件,你可以打开它们,看看它的使用路径。
他们的目的是为了防止你不必自己复制的新版本。 在VS2003中,项目文件将包含引用的源位置,但由于VS2005不使用项目文件ASP.NET项目,这是更换特定功能。
Answer 2:
刷新文件(因为在没有人的命中呢!)描述的是DLL是从哪里来的。 这是自动刷新引用; 每当你做一个完整的构建,VS会看在这条道路,并复制该DLL的版本。
为什么这是一件好事(有时)? 比方说,你在团队环境是。 有人检查在foo.dll代码,并构建系统构建了一个新的DLL,在文件共享输出它的服务器上。 您刷新文件指向DLL的该服务器的副本。 你建立接下来的时间,VS会自动神奇地抓住该DLL的最新和最伟大的副本。
Answer 3:
在PDB是那里调试和符号。 如果你从它抛出一个异常,你就可以得到踪迹,等你在选择PDB是否被内置的控制。 xml文件是有XML注释和智能。 Visual Studio将解析并显示,当你调用这些DLL方法添加XML注释。
我不知道刷新文件。
Answer 4:
foo.pdb是符号文件为foo.dll调试器,你会需要它,否则您将无法设置断点在该代码。
Answer 5:
VS2008添加了几个文件复制到bin目录[...]他们需要在源代码控制添加?
在bin目录中没有什么需要添加到源代码控制。 一当在项目最初检查的第一件事就是忽略bin和OBJ目录。 所以,是的,你可以删除这些文件,但Visual Studio将重新创建。