ASP.NET Web Pages - 發佈網站


學習如何在不使用 WebMatrix 的情況下發布 Web Pages 應用程式。


在不使用 WebMatrix 的情況下發布您的應用程式

通過在 WebMatrix(或者 Visual Studio)中使用發佈命令,可以發佈一個 ASP.NET Web Pages 應用程式到遠程伺服器上。

此功能會複製所有您的應用程式檔、cshtml頁面、圖像以及用於 Web Pages、Razor、Helpers、SQL Server Compact(如果使用資料庫)所有必需的 DLL 檔。

有時您不想使用 WebMatrix 發佈您的應用程式。也許是因為您的託管服務提供商只支持 FTP,也許您已經有一個基於經典 ASP 的網站,也許您想自己複製所有的檔,也許您想使用 Front Page、Expression Web 等其他一些發佈軟體。

您會遇到問題嗎?是的,會的。但是您有辦法解決它。

要執行網站複製,您必須知道如何引用正確的檔,哪些 DLL 檔需要複製,並在何處存儲它們。

請按照下列步驟操作:


1. 使用最新版本的 ASP.NET

在您繼續操作之前,請確保您的主機運行的是最新版的 ASP.NET(4.0 或者 4.5)。


2. 複製 Web 檔夾

從您的開發電腦上複製您的網站(所有檔夾和內容)到遠程主機(伺服器)上的應用程式檔夾中。

lamp

如果您的應用程式中包含數據,不要複製數據(詳見下麵的第 4 點)。


3. 複製 DLL 檔

確保您的遠程主機上的 bin 檔夾中包含了和您開發電腦上相同的 dll 檔。

複製 bin 檔夾之後,它應該包含以下檔:

Microsoft.Web.Infrastructure.dll
NuGet.Core.dll
System.Web.Helpers.dll
System.Web.Razor.dll
System.Web.WebPages.Administration.dll
System.Web.WebPages.Deployment.dll
System.Web.WebPages.dll
System.Web.WebPages.Razor.dll
WebMatrix.Data.dll
WebMatrix.WebData


4. 複製您的數據

如果您的應用程式包含數據或者資料庫。例如 SQL Server Compact 資料庫(在 App_Data 檔夾中的一個 .sdf 檔),請考慮以下幾點:

您是否希望發佈您的測試數據到遠程伺服器上?

大多數時候一般是不希望。

如果在您的開發電腦上有測試數據,它將覆蓋您的遠程主機上的生產數據。

如果您一定要複製 SQL 資料庫(.sdf 檔),那麼您應該刪除資料庫中的所有數據,然後從您的開發電腦上複製一個空的 .sdf 檔到伺服器上。

就是這樣。GOOD LUCK!