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#
<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>
5. 复制 sql server compact 数据
您的 app_data 文件夹中有没有包含测试数据的 .sdf 文件?
您是否希望发布您的测试数据到远程服务器上?
大多数时候一般是不希望。
如果您一定要复制 sql 数据文件(.sdf 文件),那么您应该删除数据库中的所有数据,然后从您的开发计算机上复制一个空的 .sdf 文件到服务器上。
就是这样。good luck!