我正在研究ASP.Net MVC 3.当我在调试模式下构建它时,所有文件都转到bin文件夹。但我见过有“调试”的人bin文件夹中的“Release”文件夹。为什么我在bin文件夹中没有?
我如何进行调试&在我的bin文件夹中释放文件夹?或者我应该真的拥有它们吗?
然后我看到有Debug&释放使用“部署向导”时创建的\ obj \文件夹内的文件夹。这些文件夹和“bin”文件夹下的文件夹有什么不同?这些都一样吗?
请帮忙。
答案 0 :(得分:6)
Here is a good thread for what the /obj folder is for and how it's different from the /bin folder
至于为什么你的/ bin文件夹中没有Debug / Release文件夹:
- 在项目属性下,转到“构建”选项卡
- 从顶部的配置中选择Debug或Release
- 对于每个配置,您可以在窗口底部设置输出路径。对于Debug,使用bin \ Debug并对Release执行相同操作。
我不确定VS为什么不自动执行此操作 - 它在同一解决方案中为我的其他项目执行此操作。
答案 1 :(得分:4)
发布模式
在发布模式下构建程序集时,编译器会执行所有操作 可用的优化以确保输出的可执行文件和 库尽可能高效地执行。应该使用此模式 用于已发布给最终用户的已完成和测试的软件。 释放模式的缺点是,生成的代码是 通常越来越快,调试工具无法访问它。
调试模式
在开发软件时使用调试模式。组装时 在调试模式下编译,嵌入了附加的符号信息 并且代码未优化。这意味着输出了 编译器通常更大,更慢,效率更低。但是,一个 调试器可以附加到正在运行的程序以允许代码 在监控内部变量的值的同时逐步完成。
答案 2 :(得分:1)
尝试执行以下步骤:
第一步。
第二步。
因此,您将具有2个发布配置文件,可以在发布之前在下拉列表中指定这些配置文件。 您还可以根据需要创建任意数量的配置文件。
最终步骤。
尝试使用不断变化的配置文件,然后单击“发布”按钮并检查您指定的输出文件夹:
如果一切正确,您将在每个文件夹中包含特定的Web.config文件。
答案 3 :(得分:0)
我认为当你制作桌面应用程序时,你的Debug和Release文件夹会在Bin文件夹中创建,而在web应用程序中,debug和release文件夹不在bin文件夹中。
debug和release文件夹之间的区别是, 调试模式:帮助您进行调试,如行号等。无需优化 发布模式:它经过优化和高效,因为所有调试信息都已删除。