2009-06-21 81 views
7

我正在做一個相當新的項目,我們從頭開始。因此,不僅需要開發Web應用程序本身,還需要從頭開始完成發佈站點和配置Web服務器等的整個過程。如何在ASP.NET中自定義發佈?

這個問題可能更適合serverfault,但這真的取決於答案。所以,讓我們試試看。

我曾經通過VS2008發佈我們的網站(右鍵單擊網站,發佈網站,等待......完成)我需要以某種方式調整過程並觸發其他一些任務,如: - 複製一些文件夾從我的dav機器到web服務器 - 刪除測試數據庫並讓其上運行一些腳本 - 也許我現在不記得更多。

我在閱讀有關MSBuild,Powershell和VSTS2008等最明顯的解決方案,但我並不想深入研究它們,直到真正知道,這些工具實際上可以解決我的問題。所以,大家好,我很確定你們有很多關於這些工具的知識,或者知道更好的工具。請告訴我。我真的很感激。

這就是我的環境我住在: - VS 2008 - VSTS 2008 - SQL Server 2008中 - Windows Server 2008的

UPDATE:感謝偉大的答案,到目前爲止,但我特別因爲我們已經將它用於源代碼管理,所以尋找集成到Visual Studio Team Foundation Server中的解決方案。

乾杯, 史蒂夫

+1

可能在http:// stackoverflow處有重複。COM /問題/ 62816 /什麼,能待好方式部署的-ASPNET-Web的應用程序。 – 2009-06-21 15:30:34

回答

2

您可以設置前置和後置生成事件,並且可以有一個事件觸發一個腳本來完成你的任務。

+0

任何有指導的好網站,你可以在哪裏找到更多的信息? – derSteve 2009-06-27 16:33:47

4

我們用Subversion來部署我們的Web應用程序,並且非常滿意。

構建服務器編譯應用程序,將其複製到部署目錄並檢查對Subversion存儲庫的更改。好吧,我承認這不是微不足道的,但是在這裏投資是值得的...因爲在服務器上部署現在非常容易。優點是:

  • 只有必要的文件複製到服務器後,停機時間是最小的(使用SVN更新)
  • 這是一塊蛋糕,以驗證哪些版本部署到服務器,而且它很容易在多個網絡服務器上有一個一致的版本
  • 如果搞砸了,只需要2次點擊即可恢復到以前的版本
  • 當您部署新版本時,它會考慮刪除文件。通過舊版本複製Web應用程序可能會留下潛在危險的文件
  • web.config中的修改不會被部署覆蓋,而是會被合併。這真是一個很大的優勢
+0

感謝您的回答,但我不想把另一個工具扔進游泳池。我們使用Team Foundation Server作爲源代碼管理。 – derSteve 2009-06-27 16:32:54

1

您可能會看看IIS Web Deployment Tool是否適合您的方案;它可以讓你發佈你的網站,配置設置,數據庫等...在一起。這也將被集成到Visual Studio 2010中。

+0

我有一個簡短的看,但產品是在某種測試版。所以,在開發過程的這個重要階段,我不想與Betas爭鬥。無論如何感謝您的答案。 – derSteve 2009-06-27 16:35:01

相關問題