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 文件复制到服务器。

就是这些。祝你好运!