ASP.NET Web Pages - 發布網站

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

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

可以在 WebMatrix (、Visual Web Developer 或 Visual Studio) 中使用 Publish 命令把 ASP.NET Web Pages 應用程序發布到遠程服務器。

該功能會復制所有應用程序文件、cshtml 頁面、圖片以及所有必需的 DLL 文件,這些文件用于 Web Pages、Razor、Helpers 以及 SQL Server Compact(如果使用了數據庫)。

有時我們不希望使用這些選項。或許您的主機提供商僅支持 FTP?或許您的網站基于 ASP?或許您希望親自拷貝這些文件?又或許您希望使用其他發布軟件?

您會遇到問題嗎?是的,會的。但是我們能解決它。

如果要復制站點,您需要知道如何引用正確的文件,復制哪些 DLL 文件,并在何處存放它們。

下面是具體步驟:

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

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

2. 復制 Web 文件夾

從開發機上把網站(所有文件夾和內容)復制到遠程主機(服務器)上的應用程序文件夾。

如果您的應用程序包含數據,不要復制這些數據(參見下面的步驟 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 文件復制到服務器。

就是這些。祝你好運!