2013-08-20 23 views
0

是否有人知道用自己的更新版本替換(複製+粘貼)程序集是否100%安全,其中所有版本歷史記錄(AssemblyInfo.vb)完全是相同,但唯一的區別是在aspx.vb文件之一中發生了輕微的代碼更改。在生產環境中更新單個.NET程序集

+0

這個問題的答案完全取決於你的意思是「小代碼更改」。對於大多數小的更改,它會很好,但當然有幾種類型的更改(修改常量,枚舉,方法簽名等),這些更改會導致重大更改。因此,一般來說,它不是100%安全**。 –

回答

0

如果您確定沒有破壞您現有的代碼(方法不再存在,...),這是安全的。 如果您手動加載程序集,請確保更新版本和令牌。

如果您不確定是否可以將您的網站複製到另一個文件夾中,請創建一個測試IIS實例並測試單個文件的部署。

請記住,乾淨的部署是安全的,而不是單個文件部署,如果您沒有特別小心,可能會導致重大更改。這可能不是測試實例的問題,但絕不應該在Live上完成。

0

這絕對是可行且非常容易實現的,但當生產系統變得非常大,可能不穩定並且擁有大量用戶時,它很容易成爲一種可能產生負面影響的習慣。

有一對夫婦的方式,我建議想還是要謹記:

  • 創建一個安裝程序或取決於你的解決方案的項目 多個安裝程序。這些安裝程序會生成可修改的文件以在生產服務器上安裝 。這將手動完成。備份以前的 安裝程序進行回滾。

  • 您可以創建一個ClickOnce應用程序。這可以手動運行,也可以使用穩定的調度應用程序進行調度。也可以使用Visual Studio's publishing function。在 編譯代碼並將其設置爲釋放模式之後,它將通過 文件/ network/ftp在生產空間上發佈。這取代了所有的標記文件和程序集。

  • 您可以使用TFS Builder server和 安排每日或每週構建的過程自動化。這些裝置可以手動進行 或者可以使用SMS(微軟系統管理服務),以 進度及時安裝

  • 我們可以使用Windows Powershell以及

TFS構建的服務器和短信隨身成本的影響當然,如果生產環境 上的問題可能會導致公司倒閉,它將是一個小的代價。

有幾種方法可以做到這一點。當涉及到生產環境時,請看看有什麼可行的,並養成良好的習慣