Azure SDK 2.7 for .NET 釋出

這篇文章要宣佈 Azure SDK 2.7 for Visual Studio 2013 及 Visual Studio 2015 的推出,而 Azure SDK 2.7 也是 Visual Studio 2015 正式版第一個正式支援的版本,接下來會介紹這個版本的 Azure SDK 做了什麼樣的改進。

Azure SDK 2.7 for .NET [ VS2015 | VS2013 ]

  • 在 Visual Studio 2015 改善登入體驗。Azure SDK 2.7 for Visual Studio 2015 現在已經支援使用角色存取控制(RBAC)、雲端解決方案供應商(CSP)及 DreamSpark 等帳號機制來存取 Azure 的帳號。
  • Visual Studio 2015 中的 Cloud Explorer。Azure SDK 2.7 for Visual Studio 2015 的 Cloud Explorer 提供了高效能、可延展的工具來搜尋及瀏覽您的 Azure 資源、檢視這些資源的屬性、並且可以執行一些重要的開發及診斷的工作。
  • 在 Visual Studio 2015 中遠端偵錯虛擬機器內的應用程式。使用 Azure 資源管理員所建立的虛擬機器可以使用 Visual Studio 2015 遠端偵錯虛擬機器內的程序。
  • Azure 資源管理員工具。Azure 資源管理員工具已經整合了 Visual Studio Online 讓建置的工作變得更容易了,同樣也支援角色存取控制(RBAC)以及新的訂閱帳戶類型。
  • Azure 應用程式服務工具。在 Visual Studio 2015 中已經包含了 Azure 應用程式服務的工具,這套工具的更新加入了可以遠端分析 Web 應用程式效能的功能、改良了 API 應用程式所產生的 Swagger、以及多重帳號的登入。Azure 應用程式服務使用 Azure 資源管理 API 來實作,並且加入 DreamSpark 及雲端解決方案供應商的支援,同時也支援 API App 的開發。
  • HDInsight 工具。在這次發行的版本中,我們加入了在 Tez上 Hive 工作的執行圖表、加強 Hive DML 的語法提示(IntelliSense)支援、在 NuGet 存儲庫加入 SCP.net、升級 Storm 範本以及新的 Pig 範本。
  • Azure Data Factory 工具。 這個版本加入了 Azure Data Factory 工具,我們的目標是簡化編輯 Azure Data Factory 的使用體驗,並且減少使用及部署的困難。Azure Data Factory 工具同時為新手及進階的用戶提升了生產力及效率以及一個很棒的工具,所以用戶便能在 Visual Studio 中以互動式介面編輯與部署 data pipelines。詳情請見 Azure Data Factory 的部落格文章

在 Visual Studio 2015 改善登入體驗

Visual Studio 讓您能夠同時登入多個 Azure 帳號,這樣一來便能輕易存取您帳號間的資源而不必登入登出,Visual Studio 2015 以及 Azure SDK 2.7 修正了許多部份,包括了減少重複輸入帳號密碼的登入動作,您可以參考這篇文章瞭解登入體驗的改良。

除此之外,在安裝 Azure SDK 之後,您會發現在伺服器總管中多了 Azure 節點,而新的 Cloud Explorer 及所有與 Azure 相關的對話盒中都加入了輕易切換帳號的功能,因為加入了這項功能,我們只有在需要的時候才會要求您輸入帳號密碼資訊,所以您就不會老是看到要求您登入的畫面。像下面這個建立 Web 應用程式的對話盒就顯示了切換帳號的選單,讓您能夠在不必離開對話盒的情況下切換不同的帳號及訂閱。

Azure SDK 2.7 同樣也支援了使用角色存取控制(RBAC)的方式來存取 Azure 上的資源,所以您不必再把其它開發人員加入您 Azure 訂閱帳戶的共同管理員,您可以在這些資源上指定某個使用者帳戶僅能存取某項資源或是執行某個動作,Visual Studio 一樣能瞭解這些權限的設定讓開發人員順利操作。關於角色存取控制的詳細內容,請參考這篇文章

其它像是 DreamSpark 計劃或是雲端解決方案供應商(CSP)的訂閱類型也能在 Visual Studio 中使用了。除此之外,在不同目錄下的帳號也可以透過篩選器過濾只顯示單一目錄下的資源,這樣便能更容易管理多個訂閱帳戶。

目前這些新的訂閱帳戶類型僅在 Visual Studio 2015 中支援,若您使用 Visual Studio 2013 則要等到未來新的 SDK 中才會加入支援。

Visual Studio 2015 中的 Cloud Explorer

Cloud Explorer 是一個新的工具視窗,而且即將會取代在伺服器總管中的 Azure 節點。我們已經收到很多使用者的反應在伺服器總管中的 Azure 節點的一些問題,像是在管理大量資源時有效能的問題、缺乏新的 Azure 資源管理員的支援、也不支援角色存取控制(RBAC)及資源群組。Cloud Explorer 試著解決這些問題,並且讓您可以在 Visual Studio 中對於這些 Azure 上的資源進行效能分析診斷以及其它開發工作。

原本在伺服器總管中的能對應用程式服務、儲存體帳號、SQL 資料庫以及虛擬機器採取的動作,大部份都已經實作在新的 Cloud Explorer 中了,而在未來的版本會持續補完所有的功能。除此之外,您還可以展開其它伺服器總管中沒有的資源,像是 DocumentDB 以及本地端 Azure Fabric 叢集,您也能看到使用 Azure 資源管理員所建立的資源,雖然有些項目只能呼叫「在入口網站中開啟」,不過我們未來還會持續更新這個部份。

除了傳統資源類型檢視之外,您也可以看到資源群組檢視,這讓您可以很方便地檢視或管理同一個資源群組下的資源,您會發現在工具視窗下方的有個 Actions 面板,我們相信這個能幫助您瞭解針對不同的資源能採取什麼動作。而另一個 Properties 面板則能讓您快速檢視及複製屬性的設定,像是連接字串或是金鑰等資訊。

我們同時也提供了用名稱搜尋資源的功能,這樣您能夠更方便地找到資源,目前搜尋的功能只有在資源類型檢視下可以使用,未來我們會把這個功能加入資源群組檢視中。

最後,按下上方工具列面板上的設定圖示時,會顯示切換或篩選帳號的選項,您也可以在下拉式選單中選擇 Add an account 來加入新的帳號,如下所示。

試一下新的 Cloud Explorer,並且使用下方的連結讓我們知道您的想法,關於更多 Cloud Explorer 的細節,請參考這篇文章

在 Visual Studio 2015 中遠端偵錯虛擬機器內的應用程式

在雲端上的非上線環境中掛載遠端除錯器是個很受歡迎的除錯方式,在 Azure SDK 2.7 中您可以在 Visual Studio 中將除錯器連接到 Azure 上傳統的虛擬機器上進行偵錯,只要在 Cloud Explorer 中選擇虛擬機器,然後在 Actions 面板中點擊 Enable Debugging 就可以開啟遠端連接偵錯器的功能。

一旦開啟了偵錯功能後,在虛擬機器的動作清單中就會加入一個 Attach Debugger 的選項,點擊 Attach Debugger 後就會顯示 Attach to Process 對話盒,對話盒中會列出虛擬機器上目前所有正在執行的程序,選擇一個您想除錯的程序,然後點擊 Attach 按鈕來連接除錯器到程序上,舉例來說,若您想要遠端偵錯虛擬機器上執行的程序,可以選擇連接到 w3wp.exe 的程序。

Azure 資源管理員工具

Azure 資源管理員中改良了許多部份,包括自動化處理以及支援新的訂閱類型。由於 PowerShell Tools for Visual Studio 現在已經內建在 Visual Studio 2015 中,所以這個工具可以輕易地使用 PowerShell 指令將 Azure 資源管理員範本部署到雲端。

而透過支援角色存取控制與新的訂閱類型,這個資源管理工具也可以用在這些情境中。

同樣在這個工具中被新加入的,還包括可以使用新的儲存體帳號,如果您使用之前版本的 SDK 部署過 Azure 資源群組,若您要使用這些新功能,工具會提示您使用 PowerShell 指令來升級,當然您也可以維持現狀繼續使用。

其它的改變像是將部署工作移植到 PowerShell 指令上,以及使用 .targets 檔案在 Visual Studio Online 上設定自動建置的工作,這些都比使用共享環境變數來得簡單多了。如果您想在之前的 Azure 資源群組專案中使用這些新功能,您可以把這些檔案複製到專案中,並且設定使用 Azure SDK 2.7 的版本。

最後,隨著 Azure 資源管理員中的 Azure 虛擬機器正式上市,在 Azure 資源群組專案中建立及編輯 Azure 虛擬機器也變成一件很容易的事。(Azure 資源管理員工具並不支援 Visual Studio 2012 或是任何版本的 Visual Web Developer)

Azure 應用程式服務工具改良

使用 Azure 應用程式服務的 Web 開發人員會覺得這個 Azure SDK 是有感升級,像是前面提過改良的登入體驗及 Cloud Explorer 之外,我們還加入了遠端效能分析工具,讓您能夠取得更多診斷資訊,提升您的 Azure 開發體驗。另外我們也改良了 API 應用程式預覽範本中產生的 Swagger 程序,這些改進我們在下面詳述。

Azure Web 應用程式遠端效能分析

在這次更新中,我們透過加入遠端效能分析的工具加強了遠端診斷及偵錯的能力,這個功能與原本支援雲端服務的分析工具有類似的操作體驗,要分析一個 Web 應用程式,只要在伺服器總管中的 Web 節點上按右鍵,然後選擇 Start Profiling (之後會移到 Cloud Explorer 裡),接著遠端的分析階段便會開始啟動,接著回到您的網站上進行操作,分析的資料就會儲存在 Azure 上,一旦您透過相同的方式在伺服器總管中停止分析,這些分析資料就會下載回 Visual Studio 2015 中(遠端分析的功能目前僅支援 Visual Studio 2015),接著您就能檢閱這些資料瞭解您的網站在 Azure 上的運作情形。

關於效能分析及診斷工具的詳細內容,可以參考這篇部落格

Azure API 應用程式預覽範本

這次我們在 Visual Studio 2015 中加入了 Azure API 應用程式預覽範本,而且改良了範本內的程式碼,加入自訂操作篩選器以確保在使用 Swashbuckle 產生 API 應用程式 Swagger 時不會有重複的 Swagger 識別碼,下方 Visual Studio 編輯器中的 SwaggerConfig.cs 檔案顯示了一個要套用至 Swashbuckle 設定中的自訂 Web 擴充套件,所以多個操作並不會有相同的操作識別碼,否則就會在 Visual Studio 產生程式碼時出錯。 

想要瞭解更多關於自訂的類別,可以參考 Azure API 應用程式的文章

對用戶端 API 開發人員而言改良了 Swagger 範本

我們的工具減少了 Swagger 輸出內容的複雜度,同時也在 Visual Studio 中產出了高品質的程式碼,我們使用取用 API 應用程式對話盒(見下圖)的功能來產生任何 .NET 應用程式所需要的 C# 用戶端程式碼,而這些程式碼就能與您的 API 應用程式進行溝通,透過這樣的工具,我們讓你的用戶端應用程式更容易存取 API 應用程式的資料,我們同樣讓 Visual Studio 2015 支援瀏覽 Swaggle 檔案,所以您也可以在本地端測試 Web API 而不必立即部署到 Azure 上。

對一個啟用 Swashbuckle 產生 Swagger 的 Web API 專案,它會開啟您的 Web API 程式,並且使用 API 應用程式用戶端產生工具來呼叫以產生程式碼,由於我們優化了範本,所以能產出了更簡潔的程式碼,而且有了更明確且容易遵循的命名規則,您就可以用來確認哪一個用戶端方法對應到哪一個 Web API 呼叫。下面這段程式碼同時顯示了 Web API 以及主控台應用程式的程式碼,並且使用了由 Visual Studio 所產生的 REST API 用戶端函式庫,所以當您的 API 經由 Swaggle 修飾後,就可以看到類別的獨特性及提供給您的用戶端豐富的物件模型。

Hadoop Tools for Visual Studio

這次的更新中也讓使用 Visual Studio 的開發人員能夠更加善用 Azure 上的 Hadoop 環境。

在 Tez 上的 Hive 工作圖表

您可以使用 Tez 作為執行引擎來執行 Hive 工作,這些圖表可以幫助您找到調整效能的機會,而且更容易瞭解運算流程。不論是在 Windows Server 或 Linux 上最新版的 HDInsight 上執行這些工作,都可以得到這個資訊。

擴增 Hive DML 的語法提示(IntelliSense)支援

現在您可以享受到更多 Hive 資料操作語言(DML)的語法提示支援,像是加強對於 SELECT 敘述句的支援,您會在欄位名稱、使用者自訂函式(UDF)、子查詢語句、INSERT OVERWRITE 敘述句、CTAS 敘述句等等看到語法提示。

NuGet 支援 SCP.NET SDK

現在透過 NuGet 支援 SCP.NET SDK 就可以讓 SCP.NET 維持在最新的版本,當有新版本釋出時,NuGet 便會顯示套件升級的通知,而您隨時都可以在專案上按右鍵選擇 "管理 NuGet 套件" 來安裝或升級 SCP.NET。

新的專案類型

現在您已經可以在 Visual Studio IDE 中建立或提交 Pig 指令到 HDInsight 叢集上,同樣的也有一些範例能協助您能在其它 Azure 服務如:DocumentDB, Azure SQL Database 及 HBase 上使用 Storm。

其它資源

這裡列出了關於這篇文章提到內容的相關參考資源:

總結

如果您已使用了之前的版本,請參考 Azure SDK 2.7 的發行記錄來確認這個版本有哪些改變,也可以看看 Visual Studio 2015 發行記錄Visual Studio 2013 Update 5 發行記錄來瞭解工具的更新。如果發現有任何問題,也可以參考 Visual Studio 2015 KB 文章以及 Visual Studio 2013 Update 5 KB 文章

本文翻譯自 Announcing the Azure SDK 2.7 for .NET