1.關(guān)于 bin 目錄和 obj 目錄 bin 目錄用來保存項目生成后程序集,它有 Debug 和 Release 兩個版本,分別對應(yīng)的文件夾為 bin/Debug 和 bin/Release,這個文件夾是默認的輸出路徑,我們可以通過:項目屬性—>配置屬性—>輸出路徑來修改。 obj 目錄是用來保存每個模塊的編譯結(jié)果,在 .NET 中,編譯是分模塊進行的,編譯整個完成后會合并為一個 .DLL 或 .EXE 保存到 bin 目錄下。因為每次編譯時默認都是采用增量編譯,即只重新編譯改變了的模塊,obj 保存每個模塊的編譯結(jié)果,用來加快編譯速度。是否采用增量編譯,可以通過:項目屬性—>配置屬性—>高級—>增量編譯來設(shè)置。 2.“是否復(fù)制到本地”的設(shè)置問題 在添加引用時,.NET 會記錄添加的引用絕對路徑,這些設(shè)置保存在“每用戶”文件中,(Solution.csproj.user),可以通過記事本打開查看。也可以在:項目屬性—>通用屬性—>引用路徑里面查看。如果設(shè)置復(fù)制到本地為 true,在生成項目時會自動拷貝該 DLL 到項目生成文件夾中(bin 目錄),否則不會拷貝。在生成項目時,對所添加的引用的是絕對路徑,而在運行時程序集默認只在當前所在的路徑下去找。要修改引用的路徑,必須通過編程的方法去實現(xiàn)。使用 References 對象。 某些軟件從功能上有企業(yè)版、標準版之分,.NET 程序集有 Debug 和 Release之 區(qū)別。關(guān)于 Debug 和 Release,MSDN 里面是這么說的: Visual Studio 項目對程序的發(fā)布和調(diào)試版本分別有單獨的配置。
顧名思義,生成調(diào)試版本的目的是用于調(diào)試,而生成發(fā)布版本的目的是用于版本的最終分發(fā)。
如果在 Visual Studio 中創(chuàng)建程序,Visual Studio 將自動創(chuàng)建這些配置并設(shè)置適當?shù)哪J選項和其他設(shè)置。在默認設(shè)置下:
程序的“調(diào)試”配置用全部符號調(diào)試信息編譯,不進行優(yōu)化。(優(yōu)化會使調(diào)試復(fù)雜化,因為源代碼和生成的指令間的關(guān)系更加復(fù)雜。)
程序的“發(fā)布”配置被完全優(yōu)化,不包含任何符號調(diào)試信息。調(diào)試信息可在單獨的 PDB 文件中生成。
當在程序集的屬性頁中選 Debug 模式時,設(shè)置如下: 當選擇 Release 模式時,設(shè)置如下: 兩者的不同點如下:
Debug 模式下生成的程序集為調(diào)試版本,未經(jīng)優(yōu)化;在 bin\debug\ 目錄中有兩個文件,除了要生成的 .exe 或 .dll 文件外,還有個 .pdb 文件,這個 .pdb 文件中就記錄了代碼中的斷點等調(diào)試信息;Release 模式下不包含調(diào)試信息,并對代碼進行了優(yōu)化,\bin\Release\ 目錄下只有一個 .exe 或 .dll 文件(也可能有 .pdb 文件,程序調(diào)試數(shù)據(jù)庫 (PDB) 文件保存著調(diào)試和項目狀態(tài)信息。千一網(wǎng)絡(luò)編輯注)。 注意若要更改項目的生成模式,不能只從項目屬性頁上點“配置”下拉框更改,那樣不起作用,必須點右上角的“配置管理器”按鈕才能更改。 |
|
來自: 悟靜 > 《.net和asp.net》