2016年4月9日 星期六

[研究] Windows Azure 雲端服務(Cloud Services)支援 .NET 版本測試

[研究] Windows Azure 雲端服務(Cloud Services)支援 .NET 版本測試

2016-04-08

開發環境:Windows 10 + Visual Studio 2015 Enterprise with SP1






********************************************************************************

(一) 預設 .NET 4.6.1 版測試

(下圖) 預設.NET版本是 4.6.1

(下圖) 編譯有些警告


訊息說雲端專案目前只支援 .NET 4.0和4.5

1>------ 已開始全部重建: 專案: WebRole1, 組態: Debug Any CPU ------
1>  WebRole1 -> D:\CODE\AzureCloudService461\WebRole1\bin\WebRole1.dll
2>------ 已開始全部重建: 專案: AzureCloudService461, 組態: Debug Any CPU ------
2>..\WebRole1\WebRole1.csproj(0,0): 警告 WAT210: Microsoft Azure 雲端服務專案僅支援在 .NET Framework 4.0 和 4.5 版上執行的角色。請將專案 'WebRole1' 的專案設定中的目標 Framework 屬性設定為 .NET Framework 4.0 或 .NET Framework 4.5。
2>WebRole1(0,0): 警告 WAT190: 專案 'WebRole1' 以 .NET Framework 4.6.1 為目標。為確保角色會啟動,這個 .NET Framework 版本必須安裝在這個角色的虛擬機器上。如果尚未安裝做為 Microsoft Azure 客體作業系統的一部分,您可以使用啟動工作安裝所需的版本。如需詳細資訊,請參閱 http://go.microsoft.com/fwlink/?LinkId=309796
========== 全部重建: 2 成功、0 失敗、 0 略過 ==========

(下圖) 本機執行,正常


(下圖) 佈署到雲端,佈署成功,執行失敗


"發行" 訊息說雲端專案目前只支援 .NET 4.0和4.5


1>------ 已開始建置: 專案: WebRole1, 組態: Release Any CPU ------
1>  WebRole1 -> C:\Code\AzureCloudService461\WebRole1\bin\WebRole1.dll
2>------ 已開始建置: 專案: AzureCloudService461, 組態: Release Any CPU ------
2>..\WebRole1\WebRole1.csproj(0,0): 警告 WAT210: Microsoft Azure 雲端服務專案僅支援在 .NET Framework 4.0 和 4.5 版上執行的角色。請將專案 'WebRole1' 的專案設定中的目標 Framework 屬性設定為 .NET Framework 4.0 或 .NET Framework 4.5。
2>WebRole1(0,0): 警告 WAT190: 專案 'WebRole1' 以 .NET Framework 4.6.1 為目標。為確保角色會啟動,這個 .NET Framework 版本必須安裝在這個角色的虛擬機器上。如果尚未安裝做為 Microsoft Azure 客體作業系統的一部分,您可以使用啟動工作安裝所需的版本。如需詳細資訊,請參閱 http://go.microsoft.com/fwlink/?LinkId=309796。
3>------ 發行已開始: 專案: AzureCloudService461, 組態: Release Any CPU ------
3> 已轉換使用 C:\Code\AzureCloudService461\WebRole1\Web.Release.config 的 Web.config 成為 obj\Release\TransformWebConfig\transformed\Web.config。
3>..\WebRole1\WebRole1.csproj(0,0): 警告 WAT210: Microsoft Azure 雲端服務專案僅支援在 .NET Framework 4.0 和 4.5 版上執行的角色。請將專案 'WebRole1' 的專案設定中的目標 Framework 屬性設定為 .NET Framework 4.0 或 .NET Framework 4.5。
3>WebRole1(0,0): 警告 WAT190: 專案 'WebRole1' 以 .NET Framework 4.6.1 為目標。為確保角色會啟動,這個 .NET Framework 版本必須安裝在這個角色的虛擬機器上。如果尚未安裝做為 Microsoft Azure 客體作業系統的一部分,您可以使用啟動工作安裝所需的版本。如需詳細資訊,請參閱 http://go.microsoft.com/fwlink/?LinkId=309796
3>WebRole1(0,0): 警告 WAT230: 連接字串 'DefaultConnection' 使用的是專案 'WebRole1' 中的本機資料庫 '(LocalDb)\MSSQLLocalDB'。當您在 Microsoft Azure 中執行此應用程式時,此連接字串將無法運作。若要存取不同的資料庫,您應該更新在 web.config 檔案中的連接字串。
3>如需有關這方面的詳細資訊,請參閱以下說明網頁: http://go.microsoft.com/fwlink/?LinkId=224877
========== 建置: 2 成功、0 失敗、0 最新、0 略過 ==========
========== 發行: 1 成功、0 失敗、0 略過 ==========



(下圖) 雲端執行失敗





Server Error in '/' Application.


Configuration Error

Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.

Parser Error Message: The 'targetFramework' attribute in the <compilation> element of the Web.config file is used only to target version 4.0 and later of the .NET Framework (for example, '<compilation targetFramework="4.0">'). The 'targetFramework' attribute currently references a version that is later than the installed version of the .NET Framework. Specify a valid target version of the .NET Framework, or install the required version of the .NET Framework.

Source Error:

An application error occurred on the server. 
The current custom error settings for this application prevent the details
 of the application error from being viewed remotely (for security reasons). 
It could, however, be viewed by browsers running on the local server machine.

Source File: F:\sitesroot\0\web.config    Line: 26


Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.34274


********************************************************************************

(二) .NET 4.6版測試

"重建方案",訊息說雲端專案目前只支援 .NET 4.0和4.5


1>------ 已開始全部重建: 專案: WebRole1, 組態: Debug Any CPU ------
1>  WebRole1 -> C:\Code\AzureCloudService460\WebRole1\bin\WebRole1.dll
2>------ 已開始全部重建: 專案: AzureCloudService460, 組態: Debug Any CPU ------
2>..\WebRole1\WebRole1.csproj(0,0): 警告 WAT210: Microsoft Azure 雲端服務專案僅支援在 .NET Framework 4.0 和 4.5 版上執行的角色。請將專案 'WebRole1' 的專案設定中的目標 Framework 屬性設定為 .NET Framework 4.0 或 .NET Framework 4.5。
2>WebRole1(0,0): 警告 WAT190: 專案 'WebRole1' 以 .NET Framework 4.6 為目標。為確保角色會啟動,這個 .NET Framework 版本必須安裝在這個角色的虛擬機器上。如果尚未安裝做為 Microsoft Azure 客體作業系統的一部分,您可以使用啟動工作安裝所需的版本。如需詳細資訊,請參閱 http://go.microsoft.com/fwlink/?LinkId=309796
========== 全部重建: 2 成功、0 失敗、 0 略過 ==========


"發行" 時候訊息


1>------ 已開始建置: 專案: WebRole1, 組態: Release Any CPU ------
1>  WebRole1 -> C:\Code\AzureCloudService460\WebRole1\bin\WebRole1.dll
2>------ 已開始建置: 專案: AzureCloudService460, 組態: Release Any CPU ------
2>..\WebRole1\WebRole1.csproj(0,0): 警告 WAT210: Microsoft Azure 雲端服務專案僅支援在 .NET Framework 4.0 和 4.5 版上執行的角色。請將專案 'WebRole1' 的專案設定中的目標 Framework 屬性設定為 .NET Framework 4.0 或 .NET Framework 4.5。
2>WebRole1(0,0): 警告 WAT190: 專案 'WebRole1' 以 .NET Framework 4.6 為目標。為確保角色會啟動,這個 .NET Framework 版本必須安裝在這個角色的虛擬機器上。如果尚未安裝做為 Microsoft Azure 客體作業系統的一部分,您可以使用啟動工作安裝所需的版本。如需詳細資訊,請參閱 http://go.microsoft.com/fwlink/?LinkId=309796。
3>------ 發行已開始: 專案: AzureCloudService460, 組態: Release Any CPU ------
3> 已轉換使用 C:\Code\AzureCloudService460\WebRole1\Web.Release.config 的 Web.config 成為 obj\Release\TransformWebConfig\transformed\Web.config。
3>..\WebRole1\WebRole1.csproj(0,0): 警告 WAT210: Microsoft Azure 雲端服務專案僅支援在 .NET Framework 4.0 和 4.5 版上執行的角色。請將專案 'WebRole1' 的專案設定中的目標 Framework 屬性設定為 .NET Framework 4.0 或 .NET Framework 4.5。
3>WebRole1(0,0): 警告 WAT190: 專案 'WebRole1' 以 .NET Framework 4.6 為目標。為確保角色會啟動,這個 .NET Framework 版本必須安裝在這個角色的虛擬機器上。如果尚未安裝做為 Microsoft Azure 客體作業系統的一部分,您可以使用啟動工作安裝所需的版本。如需詳細資訊,請參閱 http://go.microsoft.com/fwlink/?LinkId=309796
3>WebRole1(0,0): 警告 WAT230: 連接字串 'DefaultConnection' 使用的是專案 'WebRole1' 中的本機資料庫 '(LocalDb)\MSSQLLocalDB'。當您在 Microsoft Azure 中執行此應用程式時,此連接字串將無法運作。若要存取不同的資料庫,您應該更新在 web.config 檔案中的連接字串。
3>如需有關這方面的詳細資訊,請參閱以下說明網頁: http://go.microsoft.com/fwlink/?LinkId=224877
========== 建置: 2 成功、0 失敗、0 最新、0 略過 ==========
========== 發行: 1 成功、0 失敗、0 略過 ==========


本機執行,正常,發布到雲端後,執行和 4.6.1 一樣錯誤

********************************************************************************

(二) .NET 4.5.2版測試

"重建方案",訊息雖沒有4.6.1那麼多,但仍有警告。


1>------ 已開始全部重建: 專案: WebRole1, 組態: Debug Any CPU ------
1>  WebRole1 -> D:\CODE\AzureCloudService452\WebRole1\bin\WebRole1.dll
2>------ 已開始全部重建: 專案: AzureCloudService452, 組態: Debug Any CPU ------
2>WebRole1(0,0): 警告 WAT190: 專案 'WebRole1' 以 .NET Framework 4.5.2 為目標。為確保角色會啟動,這個 .NET Framework 版本必須安裝在這個角色的虛擬機器上。如果尚未安裝做為 Microsoft Azure 客體作業系統的一部分,您可以使用啟動工作安裝所需的版本。如需詳細資訊,請參閱 http://go.microsoft.com/fwlink/?LinkId=309796
========== 全部重建: 2 成功、0 失敗、 0 略過 ==========



(下圖) 佈署到雲端執行正常


********************************************************************************

(二) .NET 4.5.1版測試

"重建方案",成功,沒有警告訊息。



1>------ 已開始全部重建: 專案: WebRole1, 組態: Debug Any CPU ------
1>  WebRole1 -> D:\CODE\AzureCloudService451\WebRole1\bin\WebRole1.dll
2>------ 已開始全部重建: 專案: AzureCloudService451, 組態: Debug Any CPU ------
========== 全部重建: 2 成功、0 失敗、 0 略過 ==========


"發行" 訊息


1>------ 已開始建置: 專案: AzureCloudService451, 組態: Release Any CPU ------
2>------ 發行已開始: 專案: AzureCloudService451, 組態: Release Any CPU ------
2> 已轉換使用 D:\CODE\AzureCloudService451\WebRole1\Web.Release.config 的 Web.config 成為 obj\Release\TransformWebConfig\transformed\Web.config。
2>WebRole1(0,0): 警告 WAT230: 連接字串 'DefaultConnection' 使用的是專案 'WebRole1' 中的本機資料庫 '(LocalDb)\MSSQLLocalDB'。當您在 Microsoft Azure 中執行此應用程式時,此連接字串將無法運作。若要存取不同的資料庫,您應該更新在 web.config 檔案中的連接字串。
2>如需有關這方面的詳細資訊,請參閱以下說明網頁: http://go.microsoft.com/fwlink/?LinkId=224877
========== 建置: 1 成功、0 失敗、1 最新、0 略過 ==========
========== 發行: 1 成功、0 失敗、0 略過 ==========


上傳雲端成功,瀏覽網頁正常。

********************************************************************************

(二) .NET 4.5版測試

"重建方案",沒有任何警告

1>------ 已開始全部重建: 專案: WebRole1, 組態: Debug Any CPU ------
1>  WebRole1 -> D:\CODE\AzureCloudService450\WebRole1\bin\WebRole1.dll
2>------ 已開始全部重建: 專案: AzureCloudService450, 組態: Debug Any CPU ------
========== 全部重建: 2 成功、0 失敗、 0 略過 ==========
     

上傳雲端成功,瀏覽網頁正常。

********************************************************************************

結論

4.6.x 版,本機可以執行,上傳雲端成功,執行失敗,可能要再研究修改設定。

NET Framework 4.6.x 為目標。為確保角色會啟動,這個 .NET Framework 版本必須安裝在這個角色的虛擬機器上。如果尚未安裝做為 Microsoft Azure 客體作業系統的一部分,您可以使用啟動工作安裝所需的版本。如需詳細資訊,請參閱 http://go.microsoft.com/fwlink/?LinkId=309796

4.5、4.5.1、4.5.2 上傳雲端都可執行,但 4.5.2 在 "重建方案" 有警告訊息,但前2者沒有,所以目前 Windows Azure "雲端服務" 的 Instance 目前可能只安裝到 .NET 4.5.1。

(完)

[研究] .NET Framework 4.0、4.5、4.5.1、4.5.2、4.6.1 關聯研究
http://shaurong.blogspot.tw/2014/05/net-framework-4045451452.html

沒有留言:

張貼留言