2009-10-19 98 views
3

如果我在Visual Studio 2008中爲C#DLL設置程序集版本號,是否可以讓編譯後的二進制文件自動在文件名中包含此版本號?如果我手動重命名文件,引用它的項目會中斷。這是爲什麼?文件名不知何故映射到內部的程序集名稱?在Visual Studio中自動包含文件名中的DLL版本號

回答

6

程序集名稱是文件的名稱,對於沒有強名稱的程序集,它是CLR從磁盤加載程序集的唯一方式。當您更改程序集名稱時,應用程序不能再找到要加載的程序集,因此應用程序失敗。

至於自動生成程序集名稱中的版本號,您將無法從Visual Studio中執行此操作,但使用MSBuild構建腳本執行此操作並非不可能。我建議你不要這樣做,因爲版本信息已經存儲在程序集的清單中,大多數人不會信任文件名中的版本號(因爲這可能不準確),並且無論如何都會檢查清單。

相關問題