我正在嘗試爲網站編寫一個構建系統,以便我可以執行一次單擊構建。我從源代碼存儲庫中獲取代碼的乾淨副本,然後使用msbuild運行AspNetCompiler任務以完成網站的所有預編譯。爲什麼我需要ASP.NETNetCompiler的VirtualPath屬性
令我困惑的是我需要指定一個VirtualPath或MetabasePath。我沒有配置數據庫路徑 - 我只想將它編譯到本地目錄中,然後可以將它部署到選擇的任何服務器(即先開發服務器,然後再啓用服務器)。
VirtualPath很棘手,因爲我想要將相同的代碼部署到多個位置 - 代碼使用一些上下文和配置詳細信息來計算其SiteID以顯示不同的信息 - 因此指定單個虛擬路徑似乎並不明智。
沿着類似的路線有其他各種問題(例如VirtualPath in AspNetCompiler MSBuild Task - does it have to be equal to the final deployed Virtual Path?),但我發現的唯一答案似乎更軼事 - 即他們jsut說,它們似乎沒有什麼區別於他們的經驗。
但是,我不能相信它真的沒有什麼區別。必須有一些使用它的情況,否則它不會在那裏,也不需要。
那麼有人知道(最好有一個參考)爲什麼這樣做?將構建的虛擬路徑傳遞給任務可能會導致哪些問題?
是的,我也很驚訝。而且我不確定如何去做逆向工程來製作視覺工作室。不知道該屬性用於難以搜索Visual Studio的用途。任何有關我可能會這樣做的建議,將不勝感激。 – Chris
在Visual Studio中,轉至工具 - >選項 - >項目和解決方案(如果找不到它,請選中「顯示所有設置」框) - >「生成並運行」。然後將輸出詳細程度設置爲診斷。打開輸出窗口(Ctrl-Alt-O)並執行構建。我沒有這臺機器上的網站,或者我有一個快速瀏覽。 –
這是一個很棒的選擇,可以幫助調試我一直有的其他問題。不幸的是,當涉及到預編譯步驟時,似乎沒有任何完整的診斷輸出,並且只是說沒有任何額外的調試輸出(例如正在使用的參數)的通常的「Building directory」/ MSReporting/App_Code /'。 :( – Chris