Latest web development tutorials

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>


5. 複製SQL Server Compact 數據

您的App_Data 文件夾中有沒有包含測試數據的.sdf 文件?

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

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

如果您一定要復制SQL 數據文件(.sdf 文件),那麼您應該刪除數據庫中的所有數據,然後從您的開發計算機上複製一個空的.sdf 文件到服務器上。

就是這樣。 GOOD LUCK!