ASP.NETMVC-发布网站

ASP.NET MVC - 发布网站

学习如何在不使用 Visual Web Developer 的情况下发布 MVC 应用程序。

在不使用 Visual Web Developer 的情况下发布您的应用程序

通过在 WebMatrix、Visual Web Developer 或 Visual Studio 中使用发布命令,可以发布一个 ASP.NET MVC 应用程序到远程服务器上。

此功能会复制所有您的应用程序文件、控制器、模型、图像以及用于 MVC、Web Pages、Razor、Helpers、SQL Server Compact(如果使用数据库)所有必需的 DLL 文件。

有时您不希望使用这些选项。或许您的主机提供商仅支持 FTP?或许您的网站基于经典 ASP?或许您希望亲自拷贝这些文件?又或许您希望使用 Front Page、Expression Web 等其他一些发布软件?

您会遇到问题吗?是的,会的。但是您有办法解决它。

要执行网站复制,您必须知道如何引用正确的文件,哪些 DLL 文件需要复制,并在何处存储它们。

请按照下列步骤操作:

  1. 使用最新版本的 ASP.NET
    在您继续操作之前,请确保您的主机运行的是最新版的 ASP.NET(4.0 或者 4.5)。

  2. 复制 Web 文件夹
    从您的开发计算机上复制您的网站(所有文件夹和内容)到远程主机(服务器)上的应用程序文件夹中。
    如果您的 App_Data 文件夹中包含测试数据,请不要复制这个 App_Data 文件夹(详见下面的第 5 点)。

  3. 复制 DLL 文件
    在远程服务器上的应用程序根目录中创建 bin 文件夹。(如果您已经安装 Helpers,则 bin 文件夹已经存在)
    复制下列文件夹中的所有文件:
    C:Program Files (x86)Microsoft ASP.NETASP.NET Web Pagesv1.0Assemblies
    C:Program Files (x86)Microsoft ASP.NETASP.NET MVC 3Assemblies
    到您的远程服务器上的应用程序的 bin 文件夹中。

  4. 复制 SQL Server Compact DLL 文件
    如果您的应用程序使用了 SQL Server Compact 数据库(在 App_Data 文件夹中的一个 .sdf 文件),那么您必须复制 SQL Server Compact DLL 文件:
    复制下列文件夹中的所有文件:
    C:Program Files (x86)Microsoft SQL Server Compact Editionv4.0Private
    到您的远程服务器上的应用程序的 bin 文件夹中。
    创建(或者编辑)应用程序的 Web.config 文件:

实例 C#

<?xml version="1.0" encoding="UTF-8"?><configuration><system.data>
<DbProviderFactories><remove invariant="System.Data.SqlServerCe.4.0" /><add invariant="System.Data.SqlServerCe.4.0"name="Microsoft SQL 
Server Compact 4.0"description=".NET Framework Data Provider for Microsoft SQL 
Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, 
System.Data.SqlServerCe, Version=4.0.0.1,Culture=neutral, PublicKeyToken=89845dcd8080cc91" 
/></DbProviderFactories></system.data></configuration>
  1. 复制 SQL Server Compact 数据
    您的 App_Data 文件夹中有没有包含测试数据的 .sdf 文件?
    您是否希望发布您的测试数据到远程服务器上?
    大多数时候一般是不希望。
    如果您一定要复制 SQL 数据文件(.sdf 文件),那么您应该删除数据库中的所有数据,然后从您的开发计算机上复制一个空的 .sdf 文件到服务器上。
    就是这样。GOOD LUCK!