Visual Studio Icon Visual Studio 2015 版本資訊


授權條款 |Visual Studio 的 Blog |開發人員社群

注意

這不是 Visual Studio 的最新版本。 若要下載最新版本,請參閱 Visual Studio 2019 的最新版本資訊


Visual Studio 2015 版本

您可以查看 Visual Studio 2015 所有版本的版本資訊:

下載 Visual Studio 2015

您可以從 My.VisualStudio.com下載 Visual Studio 2015。 My.VisualStudio.com 需要免費的 Dev Essentials 訂用帳戶,或 Visual Studio 訂閱


Release Notes Icon Visual Studio 2015

發行於 2015 年 7 月 20 日

此版本的新功能摘要

其他變更:

此版本的新功能詳細資料

適用於跨平臺行動裝置應用程式開發的 Visual C++

現在,您可以輕鬆地在多個應用程式平臺上共用、重複使用、建立、部署和偵測所有的平臺專用程式碼,但在 Visual Studio 的單一解決方案中。 以下是您可以執行的幾項作業:

  • 從適用于 Android Native Activity 應用程式的範本,或您可以在多個平臺和 Xamarin 原生 Android 應用程式中使用的共用程式碼程式庫建立專案。

  • 使用平臺特定的 IntelliSense 來流覽 api,並產生適用于 Android 或 Windows 目標的正確程式碼。

  • 針對 x86 或 ARM 原生平台設定您的組建。

  • 將您的程式碼部署至連接的 Android 裝置,或使用 Microsoft 具效能的 Android 模擬器進行測試。

  • 在 Visual Studio 偵錯工具中設定中斷點、監看變數、檢視堆疊及逐步執行程式碼。

  • 使用 LogCat 檢視器查看 Android 裝置的訊息記錄檔。 (Logcat 是一項診斷工具,而且很重要,可進行良好的編輯- > 組建- > debug 體驗。 )
    使用 Logcat 執行下列動作:

    • 使用搜尋列搜尋特定的記錄訊息。
    • 使用切換 Autoscroll 可輕鬆地查看即將推出的記錄訊息。
    • 清除先前的記錄輸出訊息。
    • 選擇不同的記錄層級。
  • 撰寫以 iOS 平臺為目標的 c + + 程式碼,並利用我們的先進程式碼撰寫功能,例如(但不限於)程式碼共用、跨平臺的 IntelliSense、重構和查看定義。 iOS 支援仍在進行中,因此請立即留意更多相關資訊。 您可以使用連線的 bug 來傳送意見反應給我們。 此外,您也可以使用 Visual Studio IDE 中的傳送笑臉,將您的想法傳送給我們。

我們也已新增或更新下列內容:

  • 支援 Android API 層級 21 (棒) 。
  • 以 Android 的檔案支援為基礎的新範本,可讓您使用外部組建系統 (包括 NDK 組建) 。
  • 所有範本中的先行編譯標頭檔 (包括動態共用程式庫、靜態程式庫,以及跨平臺行動範本) 。

Apache Cordova 的 Visual Studio Tools

Apache Cordova 的 Visual Studio Tools 之前稱為 Visual Studio 的多重裝置混合式應用程式,可讓您輕鬆地建立、偵測及測試以 Android、iOS、Windows 和 Windows Phone 為目標的跨平臺應用程式,從一個簡單 Visual Studio 專案。

先前 ctp 中可用的所有功能現在都可在 Visual Studio 2015 RC 中使用,包括下列改良功能:

  • 針對 Ripple 進行儲存時更新-不需要重建!
  • 當您的應用程式部署至 ios 模擬器或 Mac 上的連接裝置時,從 Visual Studio 中進行應用程式的 iOS 版本的偵錯工具
  • 改進包含的遠端 iOS 組建代理程式安全性和簡化的設定
  • 改良的外掛程式管理體驗,包括從 Git 或檔案系統將自訂外掛程式新增至您的專案的支援
  • 從改良的 config.xml 設計工具中選取平臺特定的設定選項
  • 支援 Apache Cordova 4.0.0。

我們聽取您的意見反應,並放寬了您可以進行調試的裝置數量,如下所示:

  • Android 4.4、Android 4.3 及更早版本(含 jsHybugger)
  • iOS 6、7 和 8
  • Windows 市集 8.1

然後,我們會進一步放寬了調試支援。 您現在可以將目標設為 Windows Phone 8.1 的 Apache Cordova 應用程式進行偵錯工具。

您可以在 Windows Phone 8.1 模擬器或連接的裝置上設定中斷點、檢查變數、使用主控台,以及執行其他的偵錯工具。

使用 Visual Studio Tools 進行 Apache Cordova 的偵錯工具

我們新增了 RC 版本的 CLI 互通性 。 Visual Studio 中的 Cordova 專案現在會與您在磁片上的專案資料夾所做的變更進行同步處理。 無論您使用的是協力廠商工具或其他作業系統,變更都會流入或流出 Visual Studio。 (Cordova 專案的預設檔案結構是以 Apache Cordova 命令列工具所需的結構為基礎,這可讓您更輕鬆地直接使用 Apache Cordova CLI 或其他預期該資料夾結構的工具。 )

適用于 Android 的 Visual Studio Emulator

您可以在 Visual Studio (Xamarin 或 c + +) 的跨平臺專案中,或 Visual Studio Tools Apache Cordova 中使用適用于 Android 的 Visual Studio Emulator。 模擬器可讓您在不同的平臺模擬器之間切換,而不會發生 Hyper-v 衝突。 它支援各種不同的感應器和模擬,包括 GPS/位置、加速計、螢幕旋轉、縮放、SD 卡、相機、多點觸控及網路存取。 它也支援 Android 版本 4.4 (KitKat、API 層級 19) 和 5.0 (棒裡的 API 層級 21) 。

Android 的 Visual Studio Emulator 支援 WiFi 模擬,以及從數個不同的裝置硬體設定中選擇的能力。

我們為 RTM 新增了下列新功能:

  • 新平臺。 提供 jellybean (API 17) 和 5.1 (API 22) 映射可供使用。
  • 命令列介面。 在命令提示字元中流覽至% programfiles (x86) % \ Microsoft Emulator Manager\1.0\emulatorcmd.exe 將可讓您與模擬器管理員 (清單、安裝、啟動設定檔等 ) 互動,而不需要 UI。
  • 拖放 zip 程式庫。 在模擬器上拖放可刷新 zip,現在會自動將它解壓縮並進行安裝。
  • SD 卡 索引標籤。[其他工具] 視窗中的這個新索引標籤可讓您在 SD 記憶卡上推送和提取資料。
  • 自行取得。 模擬器可以安裝在電腦上,而不需要安裝 Visual Studio。 Emulator 管理員的快捷方式會出現在 [[開始] 功能表中,讓您可以從任何開發工具鏈啟動和使用它。

如需詳細資訊,請參閱Android 的 Visual Studio Emulator

適用于通用 Windows 應用程式開發的 Visual Studio Tools

適用于通用 Windows 應用程式開發的 Visual Studio 工具會與 Visual Studio 安裝程式整合。 這些工具可讓您建立可在所有 Windows 10 裝置上執行的 Windows 應用程式– pocket 中的手機、包中的平板電腦或膝上型電腦、電腦上的電腦、IoT 裝置,以及即將推出的 Xbox 主控台、Surface Hub 等等。 此外,您也可以使用這些工具來建立 Windows 的桌面應用程式,以利用 Windows 10 的 api。 如需詳細資訊,請參閱通用 Windows 應用程式 Visual Studio Tools 的新功能

如需有關 Windows 應用程式開發的詳細資訊,請參閱通用 Windows 應用程式指南Windows 開發人員中心。 如需最新 Windows 組建和 sdk 的詳細資訊,請參閱Windows 測試人員入口網站。

Visual C++

在此版本中,c + + 編譯器和標準程式庫已更新,並增強對 c + + 11 的支援,以及特定 c + + 14 功能的初始支援。 其中也包括 C++17 標準預期會有的特定功能之初步支援。

此外,已修正500以上的編譯器 bug,其中許多都是由客戶透過Microsoft 開發人員 Community所提交-感謝您!

語言功能

我們新增了下列新功能,讓編譯器更接近 standard c + +:

  • 可繼續的函式 (resume/await) Resume 和 await 關鍵字提供非同步程式設計的語言層級支援,並啟用可繼續的功能。 目前,這項功能只適用於 x64 的目標。 針對 c + + 17 建議 [>n3858]
  • 泛型 (多型) Lambda 運算式 現在可以使用 auto 指定 Lambda 函式參數類型;編譯器會在此內容中解讀 auto,表示關閉的函式呼叫運算子是成員函式樣板,而且 lambda 運算式中的每個 auto 使用都會對應到不同的樣板型別參數。 C + + 14
  • 一般化的 Lambda 捕獲運算式 也稱為 init-capture。 現在可以將任意一個運算式的結果指派給 Lambda 擷取子句中的變數。 這可用傳值方式擷取 move-only 類型,並讓 Lambda 運算式定義其 Closure 物件中的任意資料成員。 C + + 14
  • 現在支援 二進位常 值。 這類常值前面會加上 0B 或 0b,而且只能由數字 0 和 1 組成。 C + + 14
  • 傳回 型別推斷 現在可以推算一般函數的傳回類型,包括具有多個傳回語句和遞迴函數的函式。 這類函式定義的開頭會是 auto 關鍵字,如同在具有尾端傳回型別的函式定義中,但會省略尾端傳回型別。 C + + 14
  • decltype ( 使用 auto 關鍵字來初始化運算式時,會從運算式中移除 ref 限定詞和最上層 cv 限定詞,以自動) 型別推斷。 decltype(auto) 保留 ref 和 cv 限定詞,除了要引進有推斷的或尾端傳回類型的函式以外,可立即在能用 auto 的任何地方使用。 C + + 14
  • 移動特殊成員函式的隱含產生 當條件允許時,現在會隱含地產生移動函式和移動指派運算子,使得編譯器完全符合 c + + 11 右值參考。 C++11
  • 繼承函數 衍生類別現在可指定它將繼承其基類 base 的函式,方法是使用 Base:: Base 來加入語句。在其定義中。 衍生的類別只可以繼承其基底類別的所有建構函式,而沒有辦法繼承只有特定基底的建構函式。 如果衍生的類別具有相同簽章的建構函式,會無法從多個基底類別繼承;衍生的類別也無法定義具有任何它所繼承的建構函式相同簽章的建構函式。 C++11
  • 對齊查詢和控制項 您可以使用 alignof () 運算子來查詢變數的對齊,並使用 alignas () 規範來控制變數的對齊。 alignof () 會傳回必須配置之類型實例的位元組界限;對於參考,它會傳回所參考類型的對齊,而針對陣列,則會傳回專案類型的對齊方式。 alignas () 控制變數的對齊;它採用常數或型別,其中的型別是 alignas (alignof (type) ) 的速記。 C++11
  • 擴充 sizeof 您現在可以使用 sizeof () ,判斷類別或結構成員變數的大小,而不需要類別或結構的實例。 C++11
  • constexpr C + + 11 constexpr 的部分支援。 C + + 11 (部分)
  • 使用者定義常值 (udl) 現在可將有意義的後置字元附加至數值和字串常值,以提供特定的語法。 編譯器會將尾碼常值解譯為適當的 UDL 運算子呼叫。 C++11
  • 執行緒保管庫 "魔術" 靜態 靜態區域變數現在會以安全線程方式進行初始化,而不需要手動同步處理。 只有初始化是安全執行緒,以多個執行緒使用靜態區域變數仍必須以手動方式同步處理。 若要避免採用 CRT 相依性,使用 /Zc:threadSafeInit- 旗標可停用安全執行緒的靜態變數功能。 C++11
  • 執行緒區域儲存體 使用 thread_local 關鍵字來宣告應該為每個執行緒建立獨立的物件。 C++11
  • Noexcept 運算子現在可以用來檢查運算式是否可能擲回例外狀況。 現在可用 noexcept 規範指定讓函式不擲回例外狀況。 C++11
  • 內嵌命名空間 現在可將命名空間指定為內嵌,以將其內容提升至封入命名空間。 根據預設,內嵌命名空間可用來建立會公開其最新版本的版本化程式庫,同時仍讓舊版應用程式開發介面的版本明確。 C++11
  • 受限制 的等位等位類型現在可包含具有非一般的函式的類型。 這類等位的建構函式必須加以定義。 C++11
  • 新的字元類型和 Unicode 常 值現在支援 UTF-8、UTF-16 和 UTF-32 的字元和字串常值,並已引進新的字元類型 char16_t 和 char32_t。 字元常值前面可加上如 U'a' 中的 u8 (UTF-8),u (UTF-16) 或 U (UTF-32),而字串常值前面可另外加上原始字串對等項目 u8R (UTF-8 原始字串),uR (UTF-16 原始字串) 或 UR (UTF-32 原始字串)。 通用字元名稱可自由使用於 Unicode 常值中,例如 u ' \u00EF '、u8 "\u00EF 是 i",以及您「\U000000ef is 是 I」。 C++11
  • func 預先定義的識別碼 func 會隱含定義為字串,其中包含封入函式的不合格和未名稱。 C++11
  • __restrict __restrict 現在可以套用至參考。
  • Typename 關鍵字。 使用者現在可以在範本範本參數中寫入 typename 而不是類別。 C + + 14
  • 全域 void 運算子 delete (void *、std:: size_t) noexceptvoid 運算子 delete [](void *, std::size_t) noexcept 現在可以多載。 C + + 14
  • 數位分隔符號 現在,您可以使用單引號來散置數值常值,使其更容易閱讀。 例如,int x = 1 ' 000 ' 000;。 C + + 14
  • 常值中的通用字元名稱 您現在可以撰寫基底字元(例如 ' A ' 和換行字元)作為常值中的程式碼點。 例如,const char * s = "\u0041\u000A";。 C++11
  • 非靜態資料成員初始化運算式 現在可正確搭配初始化運算式清單使用。 C++11
  • 屬性 您現在可以將函式指定為 [[noreturn]],以通知編譯器該函式不會傳回 (但它可能會擲回例外狀況) 。 您現在也可以將各種不同的結構指定為 [[取代]]。 屬性現在可用於命名空間和枚舉器。 C + + 11、c + + 14 和 c + + 17
  • 使用者定義常值 (udl) 數值和字串常值現在可以有有意義的尾碼,可對常值資料執行自訂計算。 C++11
  • 資料相依性排序****屬性 您現在可以將函式參數、lambda 參數或函式宣告指定為 [[carries_dependency]],以改善經常讀取但不常修改的並行資料結構的優化。 C++11
  • 自動搭配括弧的新規則-init 清單 複製清單初始化的自動推算現在會推算 std:: initializer_list,否則會是不正確的格式。 C++17

Visual C++ 程式庫功能

  • 標準程式庫類型的使用者定義常值 (udl)<Chrono > 、 < string > 和 < complex > 標頭現在會提供 UDL 運算子,方便您參考。 例如,123ms 表示 std::chrono::milliseconds(123)、"hello"s 表示 std::string("hello") 和 3.14i 表示 std::complex(0.0, 3.14)。
  • Null 正向反覆運算 器標準程式庫現在允許建立不參考容器實例的正向反覆運算器。 已將這類迭代器初始化為值,並比較是否與特定容器類型相等。 將已初始化為值的迭代器和未初始化為值的另一個相比較尚未定義。 C + + 14
  • 引號 () 標準程式庫現在支援加上引號的 () 函式,可讓您更輕鬆地使用加上引號的字串值和 i/o。 在使用 quoted() 的情況下,會把整個加引號的字串視為單一實體 (如同非空格字元的字串是 I/O 資料流);此外透過 I/O 作業,逸出序列會保留下來。 C + + 14
  • 異類關聯查閱 標準程式庫現在支援關聯容器的異類查閱函數。 只要類型與 key_type 相當,這類函式可讓 key_type 以外的類型查閱。 C + + 14
  • 編譯時期整數序列 標準程式庫現在支援代表可在編譯時期評估之整數值序列的 integer_sequence 類型,可讓您更輕鬆地使用參數封裝,以及簡化特定範本程式設計模式。 C + + 14
  • exchange () 標準程式庫現在支援 std:: exchange () 公用程式函式,以指派新值給物件,並傳回其舊值。 針對複雜類型,exchange () 可避免在移動的函式可供使用時複製舊值、避免複製新值(如果它是暫存或移動的),並接受任何類型做為新值(利用任何轉換指派運算子)。 C + + 14
  • 雙範圍相等 () 、is_permutation () 、不相符 () 標準程式庫現在支援接受兩個範圍的 std::等於 () 、std:: is_permutation () 和 std::不符 () 的多載。 這些多載會處理不同長度的序列。 C + + 14
  • 取得 <T > () 標準程式庫現在支援 get T () 樣板函式 < > ,以允許以其類型定址元組元素。 如果元組包含兩個或多個相同類型的元素,則 get < T > () 元組無法由該類型定址; 不過,仍可處理其他唯一類型的專案。 C + + 14
  • tuple_element_t 標準程式庫現在支援 tuple_element_t < I,t > 類型別名,這是 typename tuple_element < I,t > :: type 的別名。 這為範本程式設計人員提供一些便利,類似于 type_traits 中的其他中繼函式類型別名 < > 。 C + + 14
  • 檔案系統 "V3" 技術規格 已將內含的檔案系統技術規格執行更新為最終版本。
  • 基本配置器 標準程式庫現在支援最基本的配置器介面;值得注意的修正包括 std:: function、shared_ptr、allocate_shared () 和 basic_string。 C++11
  • < chrono > chrono 類型 high_resolution_clock 並修正 steady_clock。 C++11
  • constexpr 已在整個 c + + 標準程式庫中執行。 C + + 11、c + + 14 和 c + + 17
  • quick_exit () 您現在可以藉由呼叫 quick_exit () ,然後在 at_quick_exit () 中執行清除程式碼,來更明確地終止多執行緒處理常式。 C++11
  • void_t 支援先進的範本元()。 C++17
  • 如果已知為安全,現在允許轉換成 unique_ptr < T [] > 。 C++17
  • invoke () 可允許函式物件、成員函式的指標,以及要使用統一語法呼叫的資料成員指標。 C++17
  • noexcept 標準程式庫已清除在特定函式上使用 noexcept 的功能。 C++17
  • uncaught_exceptions () 報告航班 (中可能超過 1) 的例外狀況數目。 C++17
  • reference_wrapper 現在完整可複製。 C++17
  • map/unordered_map 現在支援 insert_or_assign () /try_emplace () 。 C++17
  • 現在提供了 () 、空白 ()資料 () 非成員函式的 大小。 C++17
  • 在 c + + 11/14 中已淘汰 auto_ptrrandom_shuffle ()舊有 < 功能 > 的機械,並已在 c + + 17 中移除。 Visual Studio 2015 預設會提供它們,但將 _HAS_AUTO_PTR_ETC 定義為0個專案會移除其定義。
  • unique_ptr 指派現在會受到精確的限制。 C++17
  • bool_constant 現在支援作為 integral_constant bool 的別名 < > 。 C++17

Visual C++ 更快速的組建

  • 漸進式連結時產生程式碼 (LTCG) 現在您可以告訴 LTCG 只重建專案中受到編輯影響的部分。 這可能會大幅縮短使用 LTCG 的應用程式連結時間。 使用/LTCG:增量連結器參數來啟用這項功能。
  • 靜態程式庫的累加連結 其他程式碼模組所參考之靜態程式庫的變更現在會以累加方式連結。
  • /Debug:FastLink 藉由使用新的 PDB 建立技巧大幅減少連結時間。
  • 連結器的演算法已改良,以減少連結時間。
  • 已有更快建置範本大量程式碼的改良。
  • 快速特性指引優化 (PGO) 檢測 PGO 中已引進遊戲和即時系統的新的輕量檢測模式。 搭配其他在 /GENPROFILE 和 /FASTGETPROFILE 連結器參數中的新功能,當您使用 PGO 時,現在您可以在程式碼品質和建置速度之間取得平衡。
  • 減少物件檔案大小 編譯器和 c + + 標準程式庫的增強功能會大幅縮小物件檔案和靜態程式庫。 這些增強功能不會影響動態連結程式庫 (DLL) 或可執行檔 (EXE) 的大小,因為在過去已由連結器移除多餘的程式碼。

Visual C++ 效能和程式碼品質

  • 自動向量化的增強功能。 我們改進了控制流程的向量化, (如果) ,請在/O1 下編譯時進行向量化, () 最小化,以及改善向量程式碼品質,包括支援 Parallel STL、向量化更多範圍架構的 for 迴圈,以及支援 #pragma 迴圈 (ivdep) 。
  • 純量 優化的增強功能。 我們新增了較佳的測試程式碼產生、控制流程合併和優化 (迴圈-如果切換) 和其他純量優化 (例如,std:: min 和 std:: max) 有更好的程式碼產生。
  • 特性 指引優化 (PGO)。 我們對 PGO 進行了許多增強,包括改良的參考集、更佳的資料配置功能,以及重複使用先前建立的內嵌、速度與大小,以及配置決策的能力。
  • 控制 Flow 防護 (CFG)。 我們新增了一項新的安全性功能;只要將新選項新增至您的專案,Visual C++ 編譯器就會在二進位檔中插入額外的安全性檢查,以協助偵測劫持程式碼的嘗試。 當檢查引發時,它會停止執行您的程式碼,劫匪可能會對您的資料或電腦造成損害。

注意

我們已更新命令選項。 您現在應該使用/guard: cf,而不像舊版一樣使用/d2guard4 參數。

Visual C++ 生產力、偵錯工具和診斷

藉由下列功能,我們已加入 C++ 的重構支援:

  • 重新命名符號 將所有出現的符號變更為新的名稱。
  • 函數解壓縮 將選取的程式碼移至它自己的函式。 這項重整功能可做為延伸模組,以 Visual Studio 在Visual Studio 資源庫上。
  • 執行純虛擬函式 針對類別或結構所繼承的純虛擬函式產生函式定義。 支援多個與遞迴的繼承。 從繼承的類別定義啟用這項重構功能,以實作所有繼承的純虛擬函式,或只從基底類別規範實作該基底類別的純虛擬函式。
  • 建立宣告或定義 從現有的定義產生宣告,或從現有的宣告產生預設定義。 從現有的宣告或定義,或從燈泡指示器存取這個重構。
  • 移動函式定義 在原始程式碼和標頭檔之間移動函式主體。 從該函式的簽章啟用這項重構。
  • 轉換為原始字串常 值將包含 escape 序列的字串轉換成原始字串常值。 支援的 escape 序列 \n (新行) 、\t (tab) 、 ' (單引號) 、 " (雙引號) 和 ? (問號)。 在字串內的任何位置按一下滑鼠右鍵,啟用這項功能。

Visual C++ 中的程式資料庫 (PDB) 增強功能,包括下列各項:

  • 方案掃描速度已改進,特別是針對大型方案。
  • 除了在第一次開啟新方案時的初始方案掃描期間以外,在方案掃描期間,像是移至定義等的作業不會再受到封鎖。

IntelliSense 可讀性改進:已簡化參數說明和 quickinfo 中的複雜範本具現化和 typedef,使其更容易閱讀。

C + + 中的偵錯工具視覺效果

將 Natvis 偵錯工具視覺效果新增至您的 Visual Studio 專案,以方便管理和原始檔控制整合。 加入至專案的 Natvis 檔案之評估優先順序高於在專案外部的 Natvis 視覺化檢視。 如需詳細資訊,請參閱 在偵錯工具中建立原生物件的自訂視圖

從 RC 開始,您可以在 Android 上的 c + + 進行調試時使用 Natvis 檔。 偵錯工具包含許多常見範本的視覺效果,並支援載入加入 c + + 專案的自訂檔案。

原生記憶體診斷

  • 記憶體診斷會話 (Alt + F2) 可讓您監視原生應用程式的即時記憶體使用狀況。
  • 記憶體快照 集會捕捉應用程式堆積內容的瞬間映射。 藉由比較兩個記憶體快照,可檢查堆積狀態中的差異。 在停止應用程式之後,檢視物件類型、 執行個體值和每個執行個體的呼叫堆疊配置。

改善死結偵錯與復原 當從監看式和即時運算視窗中呼叫 C++ 函式之時。

改進編譯器診斷:編譯器提供有關可疑程式碼的增強警告。 已加入新的警告 (例如已遮蔽的變數和不相符的 printf 格式字串)。 現有的警告訊息已更加清楚。

/Wv 旗標-在特定編譯器版本 XX. YY 之後引進的警告。使用/Wv: XX. YY 可以停用 ZZZZ。ZZZZ 旗標。 除了透過 /Wv 旗標指定的警告以外,亦可特別停用其他警告。

已針對啟用/Zi、/Zo 或/Z7 旗標的優化程式碼偵錯工具程式碼,改進支援。

Visual C++ 圖形診斷

已藉由下列功能改善圖形診斷:

  • 連續捕捉 使用一個 capture 來捕捉最多30個連續的畫面格。
  • 程式 設計捕獲 以程式設計方式起始框架捕獲。 程式設計擷取特別適用於偵錯絕不呼叫存在的程式之計算著色器,或適用於當呈現問題很難手動擷取,但可透過程式設計方式從執行階段的應用程式狀態進行預測時。
  • 增強的圖形事件清單 加入新的 [繪製呼叫] 視圖,以顯示依繪製呼叫組織之階層中的捕捉事件和其狀態。 您可以展開繪製呼叫,以顯示繪製呼叫時的目前裝置狀態,而且可以進一步展開每種狀態類型,以顯示設定其值的事件。
  • 支援 Windows Phone 8.1 圖形診斷現已完全支援在電話模擬器或行動網卡電話上 Windows 應用程式的偵錯工具。
  • 圖形畫面格分析 此工具會收集所捕獲框架的效能測量;此外,它也會執行一組預先定義的實驗,以提供有關套用各種材質技術時之效能影響的深入資訊。 畫面格分析也會從硬體收集效能計數器。
  • 圖形分析的專用 UI 新的 Visual Studio 圖形分析器] 視窗是用於分析圖形畫面格的專用工作區。
  • 著色器編輯及 套用查看已捕捉記錄中著色器程式碼變更的影響,而不需要重新執行應用程式。
  • 在 [工具]-[選項-圖形診斷] 中設定 [ 抓取選項 ] > > 。
  • 用來捕捉及播放畫面格的 命令列工具
  • 圖形診斷 DirectX 12 的支援。 Visual Studio 圖形診斷工具現在支援在 DirectX 12 應用程式中偵測轉譯問題。

新的 GPU 使用量工具

Visual Studio 2015 中的 GPU 使用量工具可用來了解 DirectX 應用程式的 GPU 使用量。 即時執行應用程式時,可使用畫面格時間、 畫面播放速率和 GPU 使用率圖表。 此外,藉由收集和分析詳細的 GPU 使用量資料,這項工具可提供個別 DirectX 事件之 CPU 和 GPU 執行時間的深入資訊,因此有助於判斷 CPU 或 GPU 是否為效能瓶頸。

啟用 Visual C++ Managed 測試 Project 的偵錯工具

此版本的新功能:若要啟用 Visual C++ 受控測試 Project 的偵測,請前往 [工具 |選項 |調試 |一般] 窗格,然後核取 [模組載入時隱藏 JIT 優化 (僅限 Managed) ] 選項。

C # 和 Visual Basic

語言功能

在此版本中,有數個新的 c # 和 Visual Basic 語言功能有助於減少日常程式碼中的重複使用和雜亂、鼓勵更宣告的程式設計樣式,並讓兩種語言更緊密結合。 例如,類型和成員宣告以及 null 檢查都有語法改進。 此外,區域變數可在運算式內宣告,而 await 可在 catch 和 finally 區塊中使用。 其中有許多功能只會針對舊版中的其中一種語言來執行,但最終版本將提供這兩種語言版本。

  • Nameof 提供重構安全的方式,以字串形式取得參數、成員或類型的名稱。
  • 使用 null 條件運算子 時,您可以在存取及叫用成員和索引子時取得內建 null 檢查。
  • 字串插補:字串插補可提供簡潔的方式來描述將運算式插入格式字串中的字串範本 (c # 僅限在預覽階段,VB 和 c # (RTM) )。
  • 方法僅限 getter 屬性 等,現在可以有單一運算式做為其主體,就像 lambda 一樣。
  • Auto 屬性 可以有初始化運算式,而不再需要 setter。
  • 索引初始化運算式:在物件初始化運算式內,您現在可以初始化新物件的特定索引。 僅限 C#。
  • 例外狀況篩選準則 可讓您查看例外狀況,並決定是否使用指定的 catch 區塊攔截例外狀況。
  • 使用 靜態類別 的子句可直接將其靜態成員帶入範圍中,因此您可以在不前面加上類別名稱的情況下,呼叫 () 或 Sqrt () 範例。
  • Await 現在可在 catch 和 finally 區塊中運作,回避一些很難解決的問題。

程式碼編輯器 UI 和編輯

c # 和 Visual Basic 的程式碼編輯器 UI 和編輯體驗,已由 .NET Compiler Platform ( "Roslyn" ) 上建的新體驗取代。 您今天所喜愛的許多功能都已獲得改良或改頭換面。

  • Light 燈泡是您在 Visual Studio 編輯器中所採取之所有快速動作的新首頁,包括常見程式碼問題和重構程式碼的修正。 當您的程式碼發生問題時,燈泡會顯示這些問題的建議修正。 所有重構作業都已移至燈泡。 您可以輸入 Ctrl + < 點 > 隨時存取燈泡。

燈泡顯示建議

  • 有兩個新的核心重構作業: 內嵌暫存變數 ,並 引進本機。 以下是新 引進本機 功能的範例:

引進區域變數燈泡

以及 內嵌暫存變數 的範例:

內嵌暫存燈泡

  • 第一次新增對 Visual Basic 的重構支援,而且也已移至燈泡。
  • 重新命名也已改善;現在它會反白顯示您想要重新命名的所有識別碼實例,讓您可以直接在編輯器中,一次輸入所有實例的新名稱。

內嵌重新命名的增強功能

  • 您可以在輸入時取得即時程式碼分析和自動修正程式,並提供適用于 Microsoft 平臺的特定程式碼感知指引和您的目標 NuGet 套件。 在預覽期間,您必須透過 NuGet 資源庫所取得的 NuGet 套件來加入即時 FxCop 分析器,就像任何其他封裝一樣。 當您提取任何指定的即時規則時,它會取代對等的後置組建 FxCop 規則,因此您不會收到重複的叫用。 以下是Azure 套件 Code Analysis的範例。

Azure 套件的 Code Analysis 範例

  • 已重寫 c # 和 Visual Basic 的運算式評估工具。 改進功能包括支援監看式和立即 Windows 中的 LINQ 和 lambda 運算式。

F#

語言和執行時間功能

F # 4.0 包含許多新的語言和執行時間的新增功能,這些專案會填滿間距、更多「工作」,並改善關鍵區域的效能。 許多 bug 和小型效能優化都已在編譯器和執行時間中執行。

  • 當做 一級函式的函式:類別名稱現在可以用為第一級函式值,代表該類別 (s) 的函式。
  • 統一 ' mutable ' 與 ' ref ' -' mutable ' 語法現在已可在任何地方使用,編譯器會在必要時,自動將其轉換成堆積的 ' ref ' 值。 已加入新的選擇性警告,以備開發人員希望在發生這種情況時收到通知。
  • 提供方法的靜態參數 -型別提供者提供的個別方法現在可以指定靜態參數。
  • 不可為 null 的提供 類型-提供的型別現在可透過標準 [ < AllowNullLiteral (false) ] 指定為不可為 null > 。
  • 方法引數的隱含引號 :類型 Expr 的方法引數 < > 現在可以明確加上引號,並傳遞引數值和產生它的運算式 AST。
  • 擴充預處理器文法 -布林運算子 | |、 && 和! 現在可在 #if 預處理器指示詞中,搭配 ( ) 群組使用。
  • 測量單位中的有理指數 -測量單位現在支援有理指數,有時會用於實體科學(例如電子工程)
  • 利用 ' printf ' 樣式的函式簡化測量單位的使用 -統一單位的數值現在已可無縫搭配數值 printf 格式的規範一起使用,而不需要移除單位。
  • 支援高維度的 .net 陣列 -F # 程式碼現在已可使用排名5或以上的 .net 陣列。
  • 物件初始化運算式中的擴充屬性 -現在可在物件初始化運算式運算式中指派可設定的擴充屬性。
  • 從多個泛型介面具現化繼承 ,現在允許 F # 撰寫的類別繼承自實作為多個泛型介面具現化的類別。
  • ' StructuredFormatDisplayAttribute ' 中的多個屬性 -% 透過 [>structuredformatdisplay] 指定的格式 < > 現在可以包含多個屬性。
  • 前置的 ' microsoft ' 命名空間 可省略-從 fsharp.core 使用或開啟模組與命名空間時,領先的 "microsoft"。 現在是選擇性的。

F# 執行階段

  • 正規化 陣列、清單及 seq 模組-集合處理函式集合現在在陣列、清單及 seq 模組中都是一致的, (不適用特定類型) 的 api,而且每種類型都有專用且優化的實作為。
  • 優化的結構化雜湊 -已進行大幅優化,以改善基本類型的泛型雜湊比較效能,藉由 api (例如 ' distinct ' 與 ' groupBy ')提升效能。
  • 優化的非結構化比較運算子 -fsharp.core 模組現在可以開啟,以更有效率的非結構化運算子取代預設的 F # 結構比較運算子。 當使用自訂運算子實值(特別是實值型別)處理型別時,這可以大幅提升效能。
  • 在 f # 清單上切割語法 : f # 清單現在支援切割語法以取得子清單。
  • AsyncDownloadFile 和 AsyncDownloadData 的 非同步擴充 功能現在已可供使用。
  • 更好的非同步堆疊追蹤 -F # 非同步運算中發生的例外狀況現在會提供更容易使用的堆疊追蹤,讓您更輕鬆地診斷問題。
  • 選項的 Interop api (適用于選項 -各種新的 api)已新增至選項模組,以便在 null 物件和系統的 null 值之間進行轉換。
  • Decimal 值的引號現用模式 :目前內建使用中的模式,以符合常數常值 System。引號中的十進位值。

F # IDE 功能

Visual F# 工具也有新的體驗和功能,以及許多 bug 修正。

  • 腳本調試 程式:現在可以直接在 Visual Studio 偵錯工具中調試 F # 腳本。
  • 專案範本中的元件中繼資料 -所有 F # 專案範本現在都包含 AssemblyInfo 檔案,其中包含萬用群組件層級的中繼資料屬性。
  • 整合最新的檢查-F # 專案現在可在 Visual Studio 中建立時,正確地報告其「最新」狀態。
  • 物件初始化運算式中的 intellisense 完成 -物件初始化運算式運算式現在支援使用 Ctrl + 空格鍵 完成可設定屬性的 intellisense。
  • Intellisense 完成具名引數 -方法和函式呼叫現在支援使用 Ctrl + 空格鍵 自動完成具名引數的 intellisense。
  • 資料夾支援方面的 Bug 修正-Visual F# 工具不直接支援專案中的資料夾,但已修正數個專案系統 bug,改善 Visual F# Power tools 擴充功能所新增的資料夾支援。

.NET Framework 4。6

.NET Framework 的最新版本為4.6。 它提供許多應用程式開發技術的增強功能,例如 ASP.NET、Windows Communication Foundation 和 Windows Presentation Foundation。 此外,網路功能、.NET Framework 基類程式庫和 common language runtime (都有變更,包括新的64位 JIT 編譯程式、通用 Windows 平臺應用程式的原生程式碼編譯、) 的元件載入器改進。

只有變更的取樣包括:

  • ASP.NET模型系結方法現在會傳回工作。
  • ADO.NET 現在支援 SQL Server 2016 Community Technical Preview 2 (CTP2) 中提供的 Always Encrypted 功能。
  • Windows Presentation Foundation (WPF) 針對觸控和改良的 HDPI 配置提供更好的支援。
  • Windows除了 SSL 3.0 和 TLS 1.0 之外, (WCF) 的 Communication Foundation 現在還支援 SSL 版本的 TLS 1.1 和 TLS 1.2。
  • .NET Framework 基礎類別庫包括垃圾收集、以工作為基礎的非同步模式,以及密碼編譯的增強功能。 它也會新增啟用 SIMD 的向量類型,以及支援相容性參數,讓開發人員能夠針對其程式庫的新版本所支援的功能提供統一退出機制。

如需其他詳細資料,以及新增至 .NET Framework 的新功能完整清單,請參閱.NET Framework 中的新功能。

Entity Framework

此版本包含 Entity Framework 7 的預覽版本,以及 Entity Framework 6 的更新,主要包含 bug 修正和社區投稿。

Entity Framework 7

新版本的 Entity Framework 可讓新的平臺和新的資料存放區。 Windows Phone、Windows Store、ASP.NET 5 和傳統桌面應用程式現在都可以使用 Entity Framework。 此版本的架構支援關係資料庫,以及非關聯式資料存放區(例如 Azure 資料表儲存體和 Redis)。 它包含 EF7 執行時間的早期預覽,該執行時間會安裝在新的 ASP.NET 5 個專案中。 如需 EF7 的詳細資訊,請參閱 EF7 的相關資訊。

Entity Framework 6。x

此版本包含 EF 6.1.3 版本的執行時間和工具。 EF 6.1.3 包含 bug 修正和社區投稿;您可以在我們的 Entity Framework CodePlex 網站上,查看 ef 6.1.3 中包含的變更清單。

Entity Framework 6.1.1 執行時間包含在此版本的數個位置中。

  • 如果您在尚未安裝 EF 執行時間的專案中使用 Entity Framework Tools 建立新的模型,則會安裝執行時間。
  • 執行時間會預先安裝在新的 ASP.NET 專案中,視您選取的專案範本而定。

Visual Studio IDE

共用帳戶

這一版的新功能,您可以與其他應用程式共用您在 Visual Studio 中新增的使用者帳戶,例如使用 Blend for Visual Studio 或 Microsoft Test Manager (,反之亦然) 。

共用的專案

在此版本中,您可以使用新的範本,為 Visual Basic、c # 和 JavaScript 建立空白的共用專案。 這些共用專案現在可由數種專案類型參考:

  • 任何非 flavored VB/C # 專案 (例如主控台應用程式、類別庫、Win 表單應用程式)
  • WindowsStore 8.1 和 Windows Phone 8.1 (VB/c #/JavaScript)
  • Windows PhoneSilverlight 8.0/8.1 (VB/C # )
  • WPF 和 PCL

您可以在 [共用專案] 索引標籤上,透過參考管理員新增/移除共用專案的參考。共用專案參考會顯示在方案總管的 [參考] 節點底下,但是共用專案中的程式碼和資產會視為連結至主要專案的檔案。

程式碼編輯器 (所有語言)

[檔案 中尋找] 已經過改善,可讓後續結果附加至先前的結果;您可以刪除累積的結果。

您現在可以在 Visual Studio 編輯器中取得 觸控支援,以進行下列手勢:

  • 滾動 (在 [一般] 和 [增強] 捲軸上,在編輯器介面上進行點擊和拖曳)
  • 縮小至縮放比例
  • 藉由在編輯器邊界中按一下來選取整行,然後按兩下以選取單字
  • 按下並按住以叫用編輯器內容功能表

我們注意到觸控的一個問題,那就是點兩下的手勢不一定會在較低的縮放層級上可靠。 我們想要聽取新觸控支援的意見反應,特別是您可能發現的任何問題。

XAML 設計工具

Visual Studio 客戶現在可以在其使用方式的內容中編輯儲存在外部資源字典中的範本和樣式。 這項體驗已經過進一步的調整,可讓您在 XAML 設計工具中使用查看來啟用真正的內部原位資源編輯。

自訂視窗版面配置

您現在可以從 [視窗] 功能表按一下 [儲存視窗配置],以儲存自訂視窗版面配置,並從 [視窗] 功能表按一下 [套用 視窗 配置],以套用自訂版面配置。 您也可以使用預先指派的鍵盤快速鍵來套用版面配置。 前九個配置也有鍵盤快速鍵,從 Ctrl + Alt + 1 到 Ctrl + Alt + 9。 您可以執行的其他工作包括刪除、重新命名和重新排列版面配置,方法是從 [視窗] 功能表按一下 [管理視窗配置]。

High-Resolution 圖示

當您的裝置以大於100% 的 DPI 縮放比例執行時,Visual Studio 在命令列、工具視窗工具列 (標準) 、主要功能表、錯誤清單、狀態列和某些方案總管專案類型中支援高解析度圖示。

UI 改善

  • 功能表現在以標題大小寫樣式來顯示,而不是全部大寫樣式。
  • 在關閉並重新開啟屬性頁時,[Visual C++] 屬性頁對話方塊的 [設定] 和 [平臺] 下拉式清單值已變更,以記住最後一個使用者選取的專案。

Visual Studio 意見反應

我們加強了 傳送苦臉 的體驗,並提供更好的工具來回報緩慢、停止回應和當機。 您現在可以附加檔案或標記意見反應,以便更妥善地描述問題。 此外,我們也更新了 意見 反應圖示和功能表項目,以改善探索能力。

Visual Studio 擴充性

  • 您現在可以在 Visual Studio 擴充功能中使用高解析度圖示。
  • 此版本不再支援增益集。 我們移除了 Visual Studio 的增益集專案範本和增益集管理員。 建議您將增益集轉換成 VSPackage 擴充功能。 如需詳細資訊,請參閱 常見問題:將增益集轉換成 VSPackage 擴充功能
  • 您現在可以開啟擴充性專案,即使您未安裝 Visual Studio SDK 也一樣。
  • 此外,您可以使用 Visual Studio 安裝程式來安裝 Visual Studio SDK;您不再需要前往網站。 若要這樣做:請在 [新增移除程式] 功能表上,以滑鼠右鍵按一下 [Visual Studio 2015],然後選取 [修改]。 從 Visual Studio 設定] 對話方塊中,檢查 [一般工具] 底下 Visual Studio 的擴充性工具。
  • 若要增加擴充專案的可攜性和共用,您可以使用 Visual Studio SDK 參考元件的 NuGet 版本。 如需詳細資訊,請參閱Visual Studio擴充性所發行的元件。

深入瞭解Visual Studio擴充性。

Blend

我們重新設計了 Blend for Visual Studio 2015,以提供更佳的使用者介面開發體驗來建立美觀的 XAML 應用程式。 blend 具有與 Visual Studio 一致的全新外觀、解決方案和 Team Explorer 的支援,以及擴充的檔案重載體驗,以促進 Blend 和 Visual Studio 之間更好的工作流程。 我們也提供 Blend 最需要的功能,以協助您提高生產力:

  • 您現在可以使用 XAML IntelliSense 來更有效率地撰寫 XAML,以提供語句完成和流覽至來源。
  • 您也可以在使用 XAML 查看定義的內容中,查看及編輯 XAML 控制項和資源。
  • 您現在可以更輕鬆地使用 XAML 偵錯工具的 UI 工具來尋找和修正執行中應用程式的 UI 問題,讓您可以檢查即時視覺化樹狀結構和樹狀結構中任何專案的屬性。
  • 新增 NuGet 支援之後,您就可以在 Blend 中管理 NuGet 套件。
  • 我們也以更強大的同步配置功能取代了動畫工作區功能,您可以用來建立許多不同的視窗版面配置,並將它們漫遊到電腦上。
  • 針對要使用鍵盤而不是滑鼠的 power 使用者,我們讓 Blend 設計工具窗格能夠完全存取鍵盤。
  • 最後,隨著 Microsoft 不斷努力建立通用的可存取軟體,Blend 現在是全螢幕閱讀和高對比的可存取。

若要深入瞭解 Blend 中加入的新功能,請造訪我們的 預覽 blog 文章。

偵錯與診斷

附加時的 Managed 編輯後繼續

從 RC,您可以在附加至 .NET 應用程式以及環境變數時,編輯並繼續

目標進程中的 complus_forceenc 設定為1。

中斷點設定

新的 [中斷點] 設定視窗可讓您指定中斷點的條件和動作。 此視窗包含對中斷點條件和動作的改良 IntelliSense 支援。 您可以使用 [復原] (CTRL + Z) 來還原已刪除的中斷點。

偵錯工具中的 Lambda 運算式 Windows

您現在可以在 [監看式]、[即時運算] 和其他偵錯工具視窗中,使用 c # 和 Visual Basic 的 lambda 運算式。

效能提示

您可以使用效能提示功能來查看當您使用偵錯工具設定中斷點和步驟時,直接在編輯器中執行程式碼所需的時間。

GPU 使用量

您可以使用 GPU 使用量工具,來瞭解 DirectX 應用程式的 GPU 使用量。 當應用程式即時執行時,可以使用畫面格時間、畫面播放速率和 GPU 使用率圖形。 此外,藉由收集和分析詳細的 GPU 使用量資料,此工具可讓您深入瞭解每個 DirectX 事件的 CPU 和 GPU 執行時間,因此有助於判斷 CPU 或 GPU 是否為效能瓶頸。

C + + 偵錯工具的改善

當 c + + 偵錯工具在中斷點停止時,它可以執行程式碼以計算結果,例如在監看式和即時運算視窗中顯示您的資料。 如果偵錯工具偵測到呼叫的函式已鎖死,則會嘗試解決此問題。

當 c + + 偵錯工具啟動進程時,Windows 現在會使用一般堆積(而非 debug normal 堆積)來配置記憶體。 這會導致更快開始進行偵錯。

XAML 的 UI 偵錯工具

我們加入了兩個新工具,也就是即時視覺化樹狀結構和即時屬性瀏覽器,可檢查您執行中的 WPF 應用程式的視覺化樹狀結構,以及樹狀結構中任何專案的屬性。 這些工具可讓您選取執行中應用程式中的任何元素,並顯示最終、計算和轉譯的屬性。 這些工具也包含下列各項:

  • 即時視覺化樹狀結構。 現在,您可以在偵錯工具期間查看正在執行之應用程式的完整視覺化樹狀結構。 當您在 Visual Studio 中按下 F5 或附加到執行中的應用程式時,就可以使用 [即時視覺化樹狀結構]。 您可以使用 [即時視覺化樹狀] 來選取執行中應用程式中的專案,以便在即時屬性瀏覽器中進行檢查。 子系計數隨即顯示,如果來源資訊可用,您可以立即找到專案定義的檔案和位置。
  • 即時屬性瀏覽器。 使用這項新工具檢查執行中應用程式的任何專案上設定的屬性,並依設定的範圍分組。 您可以在偵錯工具期間修改這些屬性,並立即在執行中的應用程式中看到其變更。

挑選屬性如何互相覆寫,並找出獲獎的行為,在設計階段會很困難。 現在,藉由使用新的 XAML UI 偵錯工具,您可以在執行時間執行這些檢查。

未來的更新將會發行 Windows Store 應用程式的 (支援。 )

XAML 的 UI 偵錯工具,全螢幕

例外狀況設定

您可以使用 [例外狀況設定] 工具視窗來設定偵錯工具例外狀況設定。 新視窗為非強制回應,包含改良的效能、搜尋及篩選功能。

例外狀況設定-擲回時中斷視窗

時間軸工具

新的時間軸工具為您提供以案例為中心的應用程式所取用資源的觀點,讓您可以用來檢查、診斷及改進 WPF 和 Windows 儲存8.1 應用程式的效能。

效能和診斷中樞的時間軸工具,會顯示您的應用程式在準備 UI 框架以及服務網路和磁片要求時花費了多少時間。 此工具會在應用程式載入和頁面載入等案例的內容中執行此操作。

新的時間軸工具

診斷工具

我們新增了新的診斷工具視窗,當您啟動偵錯工具時就會出現 (按 F5) 。 [診斷工具] 視窗包含下列功能:

  • 使用 IntelliTrace) 的事件 (
    使用 IntelliTrace (的事件) 可讓您存取在偵測會話期間收集的所有偵錯工具中斷、輸出和 IntelliTrace 事件。 資料會以時間軸和表格式視圖的形式呈現。 這兩個視圖會進行同步處理,而且可以彼此互動。
  • 記憶體使用量
    記憶體使用量工具可讓您在進行偵錯工具時,監視應用程式的記憶體使用量。 您也可以採用和比較詳細的原生和受控記憶體快照,來分析記憶體成長和記憶體流失的原因。
  • CPU 使用量
    CPU 使用量工具可讓您在進行偵錯工具時,監視應用程式的 CPU 使用量。
    (此工具會取代 Visual Studio 2015 的預覽版本中可用的 CPU 時間 PerfTip。 )

在先前的版本中,[診斷工具] 視窗支援下列專案類型和偵錯工具設定:

  • Managed WPF、WinForms 和主控台專案
  • 原生 Win32、Console 及 MFC 專案
  • ASP.NET 4 僅使用 IIS express
  • 受控或原生 Windows 儲存在本機執行的專案
    不支援 (Windows 儲存使用 JavaScript 或在手機上執行的專案)

RC 版本中的 [診斷工具] 視窗有下列改良功能:

  • 它可移至 Visual Studio 內的任何視窗位置,並記住其在偵測會話之間的位置和大小
  • 當使用 Debug > 附加至進程附加至進程時,會出現並顯示單一進程的資料
  • 它會在 ASP.NET 在 IIS 上執行的專案進行調試時顯示
  • 調試 ASP.NET 5 個專案時顯示
  • 在對遠端 Windows 桌面裝置上執行的應用程式進行偵錯工具時,會出現此情況
  • 當您停止調試之後,可以看到記憶體快照集
  • 偵錯工具事件 (只在偵測原生專案時,才可使用) 事件

我們也新增了 RC 版本的下列新功能:

Just My Code。 當您按 F5 啟動偵錯工具時,它只會顯示您的程式碼,讓您可以瞭解效能問題和例外狀況,而不會干擾架構和其他程式碼。 因為 IntelliTrace 中這個新的程式碼篩選功能會隱藏系統程式碼,並只公開使用者程式碼,所以可讓您更輕鬆地進行「僅限我的程式碼」。

網路診斷工具。 這種新的網路診斷工具可協助您在建立 Windows 存放區應用程式,以及在所有 Windows 10 裝置上執行的通用應用程式(從 Windows Phone 到 Xbox 和 Windows 存放區),以協助您診斷網路相關問題。

網路診斷工具會記錄您應用程式的 HTTP 網路作業資訊,包括 HTTP 要求和回應標頭、要求和回應承載、cookie 和詳細的計時資訊等等。 網路診斷工具也可以協助回答有關一般案例的問題,例如:

  • 驗證相關問題 (例如,您無法存取資源的原因)
  • 快取相關問題 (例如,為什麼您未取得最新版本的資源)
  • 執行應用程式的一般工作時下載的位元組數目
  • 存取和下載資源時的瓶頸

若要存取網路工具,請在 Visual Studio 2015 中開啟 [診斷工具] 視窗。 在 [ 調試 ] 功能表上,選取 [ 啟動診斷工具而不進行調試。 或者,只需按 Alt + F2。

我們對在進行偵錯工具時所顯示的診斷工具視窗進行了下列改善:

  • 來自您應用程式的事件現在會出現在單一 IntelliTrace 事件追蹤中,而不是在 IntelliTrace 事件和輸出事件追蹤之間進行分割。
  • 您的應用程式中的事件現在會在程式執行時出現;現在您不再需要按 [全部中斷] 來查看事件。
  • 您現在可以針對已在程式碼中設定的追蹤點啟動歷程記錄偵錯工具,讓您可以查看原始程式碼和呼叫堆疊。
  • 您現在可以在記憶體使用量圖表上看到垃圾收集和快照事件,讓您可以查看 managed 垃圾收集發生的時間,以及使用記憶體使用量工具拍攝快照集的時間。

ASP.NET

ASP.NET 4。6

ASP.NET模型系結支援工作傳回方法

ASP.NET先前工作傳回的模型系結方法不受支援,並且在執行時間于設定時擲回例外狀況。 如果使用這類方法部署應用程式,這些方法現在會正確執行。 這種變更只適用于特別以 .NET 4.6 或更新版本為目標的應用程式。

在 ASP.NET 應用程式中啟用 .NET Compiler Platform ( "Roslyn" )

您可以使用 c # 的新語言功能和任何 ASP.NET 4.6 專案中的 VB。 VS 2015 中的 Web Form 範本已預先安裝>microsoft.codedom.providers.dotnetcompilerplatform套件。

新增 HTTP/2 支援

在 Windows 10 和 .NET Framework 4.6 中,我們新增了對HTTP/2的支援。 HTTP/2 的主要目標是使用瀏覽器到網站的單一連接,改善效能、延遲和網路使用量。

更新的架構和控制項,以支援 Entity Framework 6

我們已更新動態資料 Framework、實體資料來源控制項和 Universal Providers,讓它們可以與 Entity Framework 6 搭配使用。

驗證更新

ASP.NET 4.6 範本現在使用 Open Id 連線中介軟體向 Azure AD 進行驗證。 這可讓程式設計模型以更簡單的方式驗證 Azure AD。

如果您選取 [個別使用者帳戶] 選項,則 ASP.NET 4.6 範本會示範如何使用 ASP.NET Identity 來使用雙因素驗證和社交登入。

ASP.NETMVC 5.2.3、Web Pages 3.2.3 和 Web API 5.2。3

我們已更新範本套件,以使用適用于 MVC 5.2、網頁3.2 和 Web API 2.2 的最新執行時間封裝。 如需這些套件更新的詳細資訊,請參閱 ASP.NET MVC 5.2.3、網頁3.2.3 和 web API 5.2.3 版本的 blog 文章。

ASP.NET Web APIOData 5.3。1

我們已更新 web API odata scaffolder,以使用 ASP.NET web OData 5.3.1。 如需詳細資訊,請參閱ASP.NET Web API OData 5.3 中的新功能

SignalR 2.1。2

我們已更新範本套件,以使用 SignalR 2.1.2。 請參閱 GitHub 上的SignalR 版本資訊。

Microsoft Owin 3.0 套件

我們已更新範本套件,以使用 Microsoft Owin 3.0 NuGet 套件。 請參閱此 Katana 3.0 版本注意事項

ASP.NET身分識別2.2。1

ASP.NETIdentity 2.2.1 有許多錯誤修正和效能改進,2.1。 如需詳細資料,請閱讀這ASP.NET Identity 2.2.1的 blog 文章。

ASP.NET工具更新

JSON 編輯器改善

我們對 JSON 編輯器進行了一些改良,包括效能改進,例如以非同步方式載入 JSON 架構、快取子架構,以及支援更佳的 IntelliSense。 此外,還提供下列新功能:

  • JSON 架構驗證。 根據 [架構] 下拉式清單中定義的架構,加入 JSON 架構驗證功能。
  • 未縮短的內容功能表。 您可以在 JSON 編輯器上按一下滑鼠右鍵,然後選取 [取消縮短內容功能表],以在 JSON 檔案中取消縮短任何長陣列。
  • 重載架構內容功能表。 Visual Studio 將會快取從網際網路下載的架構,即使在重新開機 Visual Studio 之後也會使用快取。 如果您知道架構已變更,您可以使用內容功能表的 [重載架構] Ctrl + Shift + J,在使用中的 JSON 檔中重新下載目前使用的架構,然後立即在目前的檔上使用它。
  • Json/bower 的 IntelliSense。 除了證明 json 和 bower json 檔案的 intellisense 和驗證之外,Visual Studio 也會直接在 json 編輯器內提供 bower 和 npm 套件的即時 intellisense。
  • 重複的屬性驗證。 JSON 編輯器現在會提供任何重複屬性的驗證。 這有助於攔截 JSON 檔案撰寫的常見問題。
  • 完整支援 JSON 架構草稿 v4 規格,大幅改善 IntelliSense 和 JSON 檔案驗證的支援。 現在更容易識別所需屬性,且編輯器可讓您輕鬆依字母順序排序屬性。 格式化縮減的 JSON 檔案現在會自動取消縮短它。
  • 我們新增了對 SchemaStore.org 的支援,這是有用 JSON 架構檔案的開放原始碼集合。 這表示,在 Visual Studio 中開啟的任何 JSON 檔案都有與 SchemaStore.org 相關聯的架構,會自動取得 IntelliSense 和驗證。
  • JSON 架構作者的支援已透過更佳的架構例行性驗證另外增強。

HTML 編輯器改善

HTML 編輯器已針對 web 標準更新 IntelliSense,並引進下列新功能:

  • 更佳的用戶端範本格式。 HTML 編輯器不再剖析或格式化雙大括弧的語法 {{...}}。 這是為了確定該語法的內容不會被視為 HTML,因此不會嘗試格式化內容,也無法使用 HTML 格式器正確完成。 這非常適合 Angular、Handlebars、Mustache 和其他雙大括弧範本的語法。
  • 支援自訂元素、聚合體元素和屬性。 HTML 編輯器不再驗證自訂元素的未知屬性,因為不同的架構有許多自訂標記。 未知的元素下將不再有波浪線。
  • Web 元件的基本 IntelliSense。 HTML 編輯器有 IntelliSense for < link rel = "import"/屬於 > Web 元件標準的一部分。
  • HTML 元素工具提示。 編輯器中的 HTML 元素會提供工具提示。
  • #區域支援。 HTML 編輯器現在支援區域折迭。 您也可以使用周圍程式碼片段來圍繞目前的選取範圍。
  • 工作清單中的 Todo/駭客批註支援。
  • Angular 圖示。 Angular 指示詞 (例如 <<ng-view >) 和屬性 (例如 ng 控制器) 現在會在 IntelliSense 中顯示 Angular 標誌,讓您輕鬆識別它們。
  • 啟動載入圖示。 HTML 類別屬性中提供的 IntelliSense 現在會顯示啟動載入標誌(如果啟動載入 CSS 檔案已定義類別名稱)。

CSS/LESS/Sass 編輯器改善

  • 工作清單中的 Todo/駭客批註支援。
  • @viewport 針對 LESS 編輯器進行修正。 在 LESS 編輯器中, @viewport 不再顯示驗證警告。
  • 提供更多程式碼片段。 CSS/LESS/Sass 編輯器現在提供更多程式碼片段,讓您的開發體驗更輕鬆。
  • 擴充功能現在可用於 Visual Studio 2015,以編譯 LESS、Scss 和 CoffeeScirpt。 在 這裡下載。

JSX 編輯器 (React.js)

Visual Studio 現在支援 JSX 副檔名的 JSX 語法。 當您輸入時,在編輯器中同時取得 IntelliSense、格式化與驗證。 此編輯器是與負責 React.js 程式庫的 Facebook 團隊合作建立的。

瀏覽器連結

CSS 會自動同步處理。 儲存 CSS 檔案或將它變更為外部 (例如,使用 LESS/SASS 編譯器) 會導致在瀏覽器中重載整個 CSS 檔案。 如果無法自動同步檔案,Ctrl + S 會導致自動重載,而且應該使其回到良好的狀態,而不需要重新整理連結的瀏覽器 (Ctrl + Alt + Enter) 。 您可以在工具列中停用此功能。

深入瞭解ASP.NET

ASP.NET 5

ASP.NET 5 是一個精簡且可組合的 .net 堆疊,可為雲端和內部部署伺服器建立現代化的 web 應用程式。 其中包含下列功能:

  • 新的輕量要求管線
  • 在 IIS 上執行,或自我裝載于您自己的進程中
  • 建置於新的 .net 執行環境 (DNX) ,可在完整 .NET Framework 或 .net Core 上執行,這是支援真正並存版本控制的新雲端優化執行時間
  • 在 Windows、Mac 和 Linux 上跨平臺執行
  • NuGet 一切,甚至是執行時間本身
  • 支援 ASP.NET MVC 6-適用于 web UI 和 web api 的統一 Web 架構
  • 以環境為基礎的設定,可順暢地轉換至雲端
  • 現成的相依性插入
  • 新的 Visual Studio 專案系統和高生產力工具體驗
  • 透過 .net Foundation GitHub 的所有開放原始碼

Visual Studio 2015 包含 ASP.NET 5 Beta5 執行時間封裝。 這些套件仍處於預覽狀態,不建議用於生產環境。 您可以在 GitHub 的已發佈版本資訊中,找到有關新增之特定增強功能和已修正之問題的所有詳細資料。

Visual Studio 2015 提供新的專案系統和整合式工具體驗,以建立 ASP.NET 5 應用程式,以及使用 DNX 專案。 其中一些新的工具功能包括:

  • 新的專案系統,用於建立在 Windows、Mac 和 Linux 上建立及執行的跨平臺 DNX 專案。
  • 使用 MVC 6、Identity 3 和 Entity Framework 7 建立 ASP.NET 5 網站和 Web api 的範本。
  • 用來建立以 DNX 為基礎的類別庫和主控台應用程式的範本
  • 透過 NuGet 建立和散發跨平臺命令列工具。
  • 使用 .NET 版本管理員 (DNVM) 從開發人員命令提示字元安裝及管理不同的 DNX 版本。
  • 尋找、安裝及還原 NuGet 套件的整合體驗。
  • 使用 CTRL +。 針對 c # 程式碼中無法解析的符號尋找並安裝 NuGet 套件。
  • 使用 NPM、Grunt/Gulp 和 Bower 的用戶端 Web 開發整合式工具,包括套件管理整合及新的工作執行器瀏覽器。
  • 使用 [執行] 按鈕下拉式功能表,直接從 Visual Studio 內執行專案層級的 DNX 命令。
  • 建立啟動 IIS Express 的自訂啟動設定檔,包括自訂環境變數的設定。
  • 從以多個架構(包括 .net Core)為目標的單一專案建立 NuGet 套件。
  • 從單一專案建立多個目標 framework 時,結合了 IntelliSense。
  • ASP.NET 5 引進的新 Razor 功能(例如標籤協助程式),現在會在 IntelliSense 和語法醒目提示中亮起。

本版次中的新功能

  • 當您開啟的專案需要的 DNX 版本無法使用時 Visual Studio 會提示您安裝所需的 DNX 版本。
  • 您現在可以使用 [加入參考] 對話方塊,加入參考以失去元件。
  • ASP.NET 5 Web 應用程式範本現在支援工作和學校帳戶選項以進行驗證。
  • [新增 ASP.NET Project] 對話方塊中的 [裝載于雲端] 選項現在可用於 ASP.NET 5 個專案。
  • 使用伺服器總管針對裝載于 Azure 上的 ASP.NET 5 個專案,進行遠端編輯 approot 下的檔案。

如需其他詳細資訊,請參閱 GitHub 上的工具版本資訊,以及我們的.net Web 開發和工具的 Blog

Azure 工具

帳戶選擇器整合

帳戶選擇器會在 Web 發行和 Web 應用程式建立/選取對話方塊中使用,以啟用對多個帳戶的單鍵存取。 您可以登入多個帳戶,並在發佈資源時輕鬆快速地存取選取個別帳戶。

API 應用程式

API Apps 預覽範本、發佈支援和伺服器總管可見度都已遷移至 Visual Studio 2015。 現在您可以使用最新版本的 Visual Studio 來建立和部署 Azure API Apps。 此外,我們也改進了 Swagger 輸出功能,讓 API 應用程式開發人員有更好的現成支援,可從 ASP.NET Web API 動態產生 Swagger。

Webjob 工具

您現在可以透過下列方式,在 Azure 網站內的伺服器總管 WebJob 節點上控制 web 工作:

  • 伺服器總管中網站節點下方的 Webjob 節點。
  • 從伺服器總管啟動/停止持續 Webjob。
  • 從伺服器總管執行隨選或排程工作。
  • 從伺服器總管查看 WebJob 儀表板。
  • [View 儀表板] 內容功能表;您可以使用它來移至 Azure 網站的 WebJob 儀表板。

WebJobs SDK

Azure WebJob 專案範本已預先安裝 Webjob SDK。

NuGet

NuGet 2.8.3

我們已新增對獲得 devextreme 專案和 BizTalkProject 2.8.3 的支援。 如需詳細資訊,請參閱NuGet 2.8.3 版本資訊。

NuGet 套件管理員

我們更新了 NuGet 套件管理員使用者介面,讓您更輕鬆地管理 Visual Studio 2015 中整個解決方案的封裝。 透過單一視圖,在您的專案中安裝套件,您可以從 NuGet 資源庫、已安裝的套件,以及有可用更新的套件,篩選可用套件的清單。

NuGet 資源庫

我們使用新的 web 服務和整合式用戶端,改善了 NuGet 資源庫的效能。 您可以在中找到有關 NuGet 更新的詳細資料 http://docs.nuget.org

JavaScript

JavaScript 編輯器支援

我們更新了 JavaScript 編輯器,讓它更加實用。

  • AngularJS 的工具支援。 現在,當您使用 AngularJS 撰寫應用程式時,IntelliSense 會提供 Angular 控制器、服務、處理站、指示詞及動畫的建議。
  • 支援從 ES6 版本的 JavaScript) (新的 javascript 語言功能,包括類別、箭號函式及範本字串。
  • Nav bar 共用專案支援。 您現在可以在共用專案中使用巡覽列來 Windows 通用應用程式專案。
  • 新巡覽列。 新的導覽列可讓您更輕鬆地在 JavaScript 原始程式碼的主要元素之間流覽。
  • JSDoc 批註。 使用 IntelliSense 時,現在會顯示以 JSDoc 格式撰寫的檔批註。 (如需 JSDoc 批註的詳細資訊,請參閱 http://usejsdoc.org 。 )
  • 物件常值 IntelliSense。 當您將物件常值傳遞給使用 JSDoc 記載的函式時,JavaScript 編輯器會提供您 IntelliSense 的建議。
  • 展開/ 折迭。 您可以展開和折迭 JavaScript 程式碼的更多區段,包括多行批註、多行陣列及所有多行區塊。
  • 工作清單支援。 您可以使用工作清單功能,在您的 JavaScript 程式碼中檢查工作批註,例如//TODO。

TypeScript

Visual Studio 2015 包含 TypeScript 工具的1.5 版本。 此版本為 ECMAScript 6 新增了豐富的支援,包括模組、解構,以及。、散佈、符號、計算屬性、let/const for ES3/ES5 和 ES3/ES5 的標記字串範本。 除了支援 ES6 之外,TypeScript 1.5 也加入了實驗性 ES7 裝飾提案提案、UMD 和 System.js 模組輸出的支援,以及新的輕量、可攜的專案檔,稱為 "tsconfig. json"。

IntelliTest

在 Visual Studio 2015 中,我們新增了 IntelliTest 來探索您的 .net 程式碼,以產生測試資料和單元測試套件。 其會為程式碼中的每一個陳述式產生一個用以執行該陳述式的測試輸入。 程式碼的每個條件分支都會執行大小寫分析。 例如

所有可擲回例外狀況的作業(例如,如果語句和判斷提示)都會進行分析。 這項分析會用於為每個方法的參數型單元測試產生測試資料,從而建立盡可能能夠涵括所有程式碼的單元測試。 您可以發揮您的專業知識來改良這些單元測試。

我們也將下列功能新增至 IntelliTest:

  • 參數化單元測試。 IntelliTest 啟用 API 的支援,您可以使用此 API 來引導測試資料產生、指定受測程式碼的正確性屬性,以及直接探索受測程式碼。 這個 API 可在 Pex 命名空間中使用,並可用於測試方法 (參數化單元測試,) 由 IntelliTest 所產生的 factory 方法。 因此,現在也可以從產生的測試方法中使用 "IntelliTest" 內容功能表命令。
  • 建立建立存根的測試。 [建立單元測試] 現在可以在內容功能表上提供,做為可讓您建立及設定測試專案、測試類別和測試存根的命令。

如需 IntelliTest (先前稱為「智慧型單元測試」 ) 的詳細資訊,請參閱 使用 IntelliTest 為您的程式碼產生單元測試

Application Insights

除了各種效能增強功能和 bug 修正之外,Application Insights 現在還包含下列更新:

  • Visual Studio 中的 Application Insights 工具現在是 Visual Studio 已連線的服務的一部分。 (若要新增 Application Insights,請開啟已連線的服務對話方塊,然後從服務清單中選擇 [Application Insights]。 )
  • 此更新與已在 Visual Studio 2013 update 3 或 Visual Studio 2013 Update 4 中新增 Application Insights 的專案完全相容。
  • ASP.NET 5 位開發人員、Windows 10 通用應用程式開發人員和 Windows 8.1 通用應用程式開發人員可以直接從 Visual Studio 將 Application Insights 新增至其專案。
  • Windows 10通用應用程式開發人員不需要登入 Azure 即可新增 Application Insights SDK;相反地,他們可以使用 Visual Studio 中的 Application Insights 工具加以新增。
  • 由於 Application Insights 使用 Visual Studio 中的通用帳戶選擇器,因此您可以在 Visual Studio 間使用相同的帳戶。
  • 現在您可以從 Project 的 [服務參考] 資料夾中,直接查看 Application Insights 的「使用者入門」資訊;只要按一下開始使用資料夾即可。

從 Project 的 [服務參考] 資料夾中,查看 Application Insights 的開始使用資訊。

Release Management

您可以使用這項功能來改善管理應用程式發行的程式、將應用程式部署到每個不同階段的特定環境,以及管理程式中的步驟,並針對每個步驟進行核准。 您可以設定從簽入到部署的發行管線,而不需要使用 Release Management 服務來安裝和維護內部部署 release management 伺服器,以進行 Visual Studio Online。

Release Management 的更新版本適用于 Visual Studio 2015。 這與現有的 Visual Studio Release Management 2013 非常類似,但在下列領域中提供改善的效能:

  • 發行管理用戶端啟動頁面,其中顯示發行程式和通知的總覽。
  • 透過其他快取,在其他 release management 用戶端頁面中轉譯和互動。
  • Active Directory 和 TFS 安全性群組的同步處理。
  • 建立新版本。

您現在可以針對 Team Foundation Server 2015 中包含的新組建系統,定義組建定義的元件和發行定義。 在定義元件時,您也可以使用與 (相同的元件名稱來指定元件的成品,或在組建定義中包含) 已發佈成品名稱的專案。

Git 版本控制

您可以更輕鬆地使用分支,並查看歷程記錄分歧中的變更。

分支

您可以藉由指定前置詞,以階層方式組織您的分支:

本機分支和遠端分支 (包括您尚未在本機建立的分支) 會分別顯示在樹狀檢視中。

Git 分支

在 RC 中,我們已修改 [分支] 頁面:

  • 您現在可以從遠端分支及本機分支合併。
  • 您正在合併的分支現在已固定到目前簽出的分支。
  • 您現在可以從最新分支到任何本機或遠端分支進行重定基底。
  • 您可以按兩下遠端分支,或以滑鼠右鍵按一下它,然後選取 [簽出],以簽出遠端分支。

遠端系統管理

您現在可以在 Team Explorer 中設定您的 Git 遠端。 在 [存放庫] 設定中,有一個新的 [遠端] 區段會顯示目前設定的遠端,您可以在其中新增、編輯或移除遠端。 例如,如果您需要變更原始遠端的 URL,您可以按一下 [編輯],然後變更提取和/或推送 URL。

詳細歷程記錄

您現在可以在歷程記錄中看到認可分歧的方式。

歷程記錄的詳細觀點

在圖形中,合併認可是灰色,而非合併認可則是較亮的色彩。 您可以在簡單視圖和詳細觀點之間來回切換。 如果已截斷圖形,您可以調整其大小。

我們對 RC 版本中的歷程記錄圖表進行了幾項更新:

  • 我們新增了工具列,可讓您控制在圖形中看到的詳細資料層級。
  • 我們現在會反白顯示歷程記錄行,以指出哪些認可哥從目前選取的認可連線。
  • 如果本機和遠端分支不同,我們現在會顯示這兩行歷程記錄。 這在重定基底本機分支之後特別有用。

Team Explorer 中的重定基底

我們現在支援 Team Explorer 中的重定基底。 若要起始重訂基底,請按一下 [分支] 頁面上的重定基底飛出視窗,或以滑鼠右鍵按一下分支,然後選取 [重定基底到 ...]。

VSO 儲存機制

我們已改善建立 VSO 存放庫時的「開始使用」體驗,而且有更多變更可簡化建立新存放庫的程式。 針對 RC,我們進行了少許變更,讓您更輕鬆地將新的程式碼新增至現有的存放庫:如果您使用 Team Explorer 連接到任何存放庫,然後選取 [檔案 > 新增 Project],對話方塊就會從該連線存放庫的根目錄開始。

發佈至 Visual Studio Online

[發佈至 Visual Studio 線上] 功能大幅簡化了將本機儲存機制放到 Visual Studio Online 的流程。 過去12個步驟的工作,現在需要2個。 在 [Team Explorer 同步] 頁面中,新的 [發佈至 Visual Studio 線上] 區段可讓您選取 [Visual Studio 帳戶管理員] 中的任何使用者帳戶。 您的 Visual Studio 線上帳戶會自動在清單中提供;不需要記住 Url。 當您準備要共用程式碼時,只要挑選新的或現有的 team 專案來裝載您的儲存機制,然後按一下 [發佈] 就大功告成了。

[發行至 Visual Studio Online] 對話方塊

單一登入

您與現今許多其他開發人員一樣,在開發您的應用程式時,會利用多個雲端服務。 例如,您可能已將雲端後端新增至您的應用程式,以儲存資料、將原始程式碼儲存在雲端,或將應用程式發佈至存放區。

在過去,每個服務都需要個別的登入程式,而且每個服務會分別管理已登入的使用者狀態。

在此版本中,我們將減少存取 Visual Studio 中許多整合式雲端服務所需的驗證提示。 現在,當您驗證 Visual Studio 中的第一個雲端服務時,我們會自動將您登入,或減少其他整合式雲端服務的驗證提示。

CodeLens

深入瞭解您的程式碼,並將焦點放在編輯器中的工作。 尋找程式碼參考、程式碼變更、相關 TFS 專案和單元測試-全都不需要離開程式碼。

在此版本中,我們已將 CodeLens 「作者」指標取代為新的「小組啟用時間軸」和「作者與變更」歷程記錄指示器。

  • 小組啟用時間軸 指標會顯示最後的作者,以及上次進行變更的時間。 選擇此指標會開啟 [ Team 活動 View],您可以在其中尋找程式碼變更的模式。 這可協助您評估變更一段時間的影響。
  • 作者和變更 指標會顯示已變更檔案的作者人數和變更數目。 選擇此指標會開啟所有變更的清單、變更的詳細資料,以及取得詳細資訊的連結,並查看先前的版本。

當您的程式碼裝載于 Team Foundation Server 和 Visual Studio Online) 和 Git 存放庫中的 Team Foundation 版本控制 (時,指標的所有資訊都可供使用。 當您在 Team Foundation Server 或 Visual Studio Online 工作時,也可以取得工作專案的相關資訊。

這些指標和先前版本中可用的指標,會顯示在 c # 和 Visual Basic 檔案的程式碼元素 (方法、欄位或類別) 層級。 以下是 c # 檔案的「小組啟用時間軸」指標範例:

C # 檔案的「小組啟用時間軸」指標

以下是 c # 檔案的作者和變更指標範例:

C # 檔案的「作者與變更」指標

不過,指標現在會顯示在所有其他檔案類型的檔案層級 (例如,c + +、SQL、JavaScript 和其他類型的檔) 。 以下是非 c # 或 Visual Basic 程式碼檔案的「Team 啟用時間軸」指標範例:

非 c # 或 Visual Basic 程式碼檔案之檔案的「小組啟用時間軸」指標

架構、設計與模型化

Code Map 和相依性圖形

當您想要瞭解程式碼中的特定相依性時,請建立 code map 將其視覺化。 然後,您可以使用出現在您程式碼旁邊的對應來流覽這些關聯性。 Code map 也可在工作或偵錯工具代碼時,協助您追蹤程式碼中的位置,如此一來,當您深入瞭解程式碼的設計時,就會讀取較少的程式碼。

在最終的 RTM 版本中,我們讓程式碼專案和連結的快捷方式功能表更容易使用,方法是將命令組成與選取、編輯、管理群組,以及變更群組內容版面配置相關的區段。 另外也請注意,測試專案會以與其他專案不同的樣式來顯示,而我們將地圖上元素的圖示更新為更適當的版本。

Code map 中的新群組

我們也變更了程式碼專案內容的顯示方式,因此您現在可以選取一個以上的群組,並將您想要的版面配置樣式套用至所有群組。 現在,當您展開元件、命名空間或 code map 上的型別時,您一律可以取得實用的相依性圖表。

選取多個群組,並在 Code Map 中套用一個版面配置

在舊版的 Visual Studio 2015 的預覽和發行候選版本中,我們進行了一些變更,讓您能夠:

  • 取得改良的由上而下圖表。 針對中大型 Visual Studio 方案,您現在可以使用簡化的 [架構] 功能表,取得對方案更實用的 Code Map。 您解決方案的元件會依方案資料夾分組,因此您可以在內容中看到這些元件,並利用您放置於結構化解決方案的工作。 您會立即看到專案和元件參考,然後顯示連結類型。 此外,方案的外部組件也會以更精簡的方式分組。
  • 更快取得反應靈敏的 Code Map。 拖放作業會產生立即的結果,而節點之間的連結會更快速地建立,而不會影響後續使用者起始的作業,例如展開節點或要求更多節點。 尤其是,[略過重建方案] 選項可讓您在建立及編輯圖表時獲得更好的效能。 當您建立 code map 但未建立方案時,現在會處理所有的角落案例,例如非建立的元件。
  • 篩選程式碼項目節點和群組。 您可以根據程式碼項目的類別來顯示或隱藏程式碼項目,也可以依照方案資料夾、組件、命名空間、專案資料夾和類型分組程式碼項目,以快速地整理對應。
  • 篩選關聯性以更容易閱讀圖表。 這包括跨群組連結,讓使用篩選視窗的侵入性比舊版低。
  • 「向內切入相依性連結」會將篩選納入考量。 當您展開以了解相依性連結的比重時,可以獲得一目暸然的實用圖表。 此圖表比較不整齊,而且會將您選取的連結篩選選項列入考慮。
  • 從類別檢視和物件瀏覽器建立圖表。 將檔案和組件從類別檢視和物件瀏覽器拖放到新的或現有的對應中。

總而言之,我們對 code map 所做的完整改良清單包括:

  • 測試專案已有不同的樣式並可篩選。 您現在可以快速識別地圖上的測試專案,因為它們的樣式不同。 此外,您可以將它們篩選掉,以便將焦點放在應用程式的工作程式碼上。
  • 程式 代碼專案會連同其內容一起加入。 因為圖表現在會顯示其內容 (到您可以視) 需要篩選出的元件和方案資料夾,所以您可以從方案總管、類別檢視和物件瀏覽器拖放程式碼專案,以取得更有用的圖表;或選取方案總管中的專案,然後選擇 [在 Code Map 上顯示]。
  • 簡化外部相依性連結。 相依性連結不再繼承自 System.Object、System.ValueType、System.Enum 和 System.Delegate,因此您可以在 Code Map 中更輕鬆地查看外部相依性。

此版本中的其他設計和模型變更

  • 圖層圖表。 使用類別檢視和物件瀏覽器來更新這些圖表。 為了達到軟體設計需求,請使用分層圖來描述軟體所需的相依性。 尋找不符合這些條件約束的程式碼,並使用這個基準來驗證未來的程式碼,讓程式碼與這個設計保持一致。
  • UML 圖表。 您已無法再從程式碼建立 UML 類別圖和循序圖。 不過,您還是可以使用新的 UML 元素來建立這些圖表。
  • 架構瀏覽器。 您已無法再使用架構總管來建立圖表。 不過,您仍然可以使用方案總管。

XAML 語言服務

我們已在 .NET Compiler Platform ( "Roslyn" ) 上重建 XAML 語言服務,讓我們可以為您提供快速、可靠且現代化的 xaml 編輯體驗,其中包含 IntelliSense。

這使得 XAML 編寫體驗等於 Visual Studio 中的其他第一級語言。 我們也會以更快的速度提供跨語言重構的強大功能集。

其他

Visual Studio 2015 的代理程式不再需要測試控制器

在 Visual Studio 2015 的代理程式中,您不需要個別的測試控制器,因為代理程式可以透過與 TFS 2015 或線上 Visual Studio 進行通訊來處理協調流程。

在所有新的 Visual Studio 2015 和 TFS 2015 案例中,我們建議您將代理程式用於 Visual Studio 2015。

但是,如果您需要測試代理程式或測試控制器才能使用 TFS 2013,建議您將代理程式用於 Visual Studio 2013 Update 5 並設定測試控制器。

測試控制器與 TFS 2015 以及 TFS 2013 相容。 不過,Visual Studio 2015 中的負載測試支援並非代理程式的一部分,因此我們建議您安裝 Visual Studio 2013 Update 5 的代理程式,並設定控制器。

已連線的服務

Visual Studio 2015 中新增的 [加入已連接服務] 對話方塊可讓您輕鬆地將應用程式連接至Azure 應用程式 InsightsAzure 儲存體Azure 行動服務、Office 365 和 Salesforce。 若要加入已連接服務,請以滑鼠右鍵按一下 [參考] 節點,然後選取 [ 加入已連接服務 ...]。

新增已連線的服務

[加入已連接服務] 對話方塊包含目前已安裝的所有已連接服務提供者,並提供取得提供者詳細資訊的方法、所使用的技術,以及目前專案中是否支援該提供者。 您可以使用 [ 尋找更多服務 ... ] 連結,在 [擴充功能和更新] 資源庫中探索其他提供者。 [ 加入已連接服務 ] 對話方塊也是可擴充的。 如果您是服務開發人員,您可以使用我們的 已連線的服務 SDK 來建立提供者,以改善您的服務的可搜尋性和磁片使用量。

企業單一登入

商務應用程式的常見工作是使用 Azure Active Directory 設定企業單一登入的應用程式。 您現在可以在應用程式的結構中,以滑鼠右鍵按一下您的應用程式,然後選取 [設定 Azure AD 驗證],輕鬆地執行這項作業。這會顯示類似 [加入已連接服務] 體驗的 wizard,引導您完成設定應用程式以使用 Active Directory 的程式。 在嚮導中指定 Active Directory 網域將會向該 Active Directory 註冊您的應用程式,並設定您的應用程式以提示登入。

在嚮導中指定 Active Directory 網域

適用于 Visual Studio 2015 RC 的 IIS 10 Express

此 RC 版本包含新版的 IIS 10 Express;它的新功能包括對 HTTP 2.0 的支援,以及與 Windows 10 的 bits 同步。

其他變更: Bug 修正和已知問題

如需這個版本的技術改善、Bug 修正及已知問題的完整描述,請參閱下列知識庫 (KB) 文章。

適用于 .Net 的 Azure SDK 2。7

azure sdk 2.7 是 Visual Studio 2015 最終版本的第一個支援的 azure sdk。 以下是一些可協助改善 Azure 開發體驗的新功能和更新:

  • Visual Studio 2015 的登入改良:適用于 Visual Studio 2015 的 Azure SDK 2.7 現在包含透過 角色型存取控制、雲端解決方案提供者、 DreamSpark,以及其他帳戶和訂用帳戶類型存取 Azure 的帳戶支援。
  • 適用于 Visual Studio 2015 的 Cloud Explorer: Azure SDK 2.7 包含 Visual Studio 2015 的 Cloud Explorer,可提供高效能、可擴充的工具來搜尋和查看您的 Azure 資源、檢查其屬性,以及從 Visual Studio 內執行重要的開發人員和診斷動作。
  • Visual Studio 2015 中虛擬機器的遠端偵錯程式:在使用 Azure Resource Manager 堆疊建立的虛擬機器上執行的遠端偵錯程式。
  • Azure Resource Manager 工具:我們更新了 Azure Resource Manager 的工具,讓您更輕鬆地使用新的 Visual Studio 線上組建工作。 此外,我們也新增了使用角色型存取控制 (RBAC) 和新訂用帳戶類型的增強功能。
  • Azure App Service 工具: App Service 工具現在也可在 Visual Studio 2015 中取得。 這項更新為 Web Apps 提供遠端程式碼剖析支援、API Apps 的 Swagger 產生改進,以及多個帳戶登入支援。 App Service 工具現在使用 Azure 資源管理 Api 來提供所有功能,並可支援 DreamSpark 和雲端服務提供者。 此外,我們也在此更新中新增了適用于 Visual Studio 2015 開發人員的 Azure API Apps 預覽版本的支援。
  • HDInsight 工具:在此版本中,我們已針對在 Tez 上執行的 Hive 作業新增執行圖形的視圖、擴充了 hive DML IntelliSense 支援、新增了 SCP.Net 的 NuGet、升級我們的風暴範本,以及新增 Pig 的範本。
  • Azure Data Factory 工具:現在已包含在 Azure SDK 中 Azure Data Factory 工具。 我們的目標是要簡化 Azure Data Factory 的編寫體驗,並移除內部和部署的挑戰。 我們在 Azure Data Factory 工具中量身打造的體驗和豐富的工具,可提高新使用者和先進使用者的生產力和效率。 在此版本中,客戶可以使用 Visual Studio 介面,以互動方式撰寫及部署資料管線。 如需這些工具的詳細資訊,請參閱 Azure Data Factory 的 blog 文章

Windows 10 SDK

這項工具會將更新 Visual Studio 2015,以提供針對執行通用 Windows 平臺的任何 Windows 裝置建立、偵測及提交應用程式所需的一切。 重點包括:

  • 使用您選擇的語言(c #、VB、c + + 或 JS)建立通用 Windows 應用程式,並部署至 Windows 10 裝置。
  • 新的偵錯工具和診斷工具,包括 XAML 應用程式和網路分析工具的 UI 偵錯工具。
  • 建立應用程式套件以提交至整合的存放區。
  • Windows 10 行動裝置版 Emulator 現在會利用您電腦的圖形硬體 (GPU) 讓螢幕轉譯速度更快。 它使用 Microsoft RemoteFx,提供更快速且更有回應的調試環境。
  • 您現在可以使用 Windows 10 行動裝置版 Emulator 中的 nfc 模擬功能,來建立及測試已啟用 nfc/近接的通用應用程式。
  • 豐富的 XAML 設計工具支援建立為裝置量身打造的使用者體驗。
  • 在雲端中 .NET Native .net 應用程式的編譯。

如需 Windows 10 開發人員工具的詳細資訊,請參閱您的世界和應用程式的升級時間

適用於 Visual Studio 的 Python 工具2。2

Visual Studio 內完全免費的 Python 支援。

  • CPython、PyPy、IronPython 等等
  • 詳細的 IntelliSense
  • 互動式偵錯
  • 與 Visual Studio 功能整合
  • 免費且開放的原始碼

如需詳細資訊,請參閱適用於 Visual Studio 的 Python 工具

Visual Studio Tools for Unity 2。0

將 Visual Studio 變成功能強大的 Unity 開發環境。

  • 組建多平臺遊戲
  • Visual Studio 的 Debug
  • 在 Visual Studio 中建立 Unity 腳本
  • 使用 Visual Studio 體驗增強的生產力

如需 Visual Studio Tools for Unity 的詳細資訊,請參閱使用 Visual Studio 的遊戲開發

適用于 Visual Studio 1.1 (RC 的 Node.js 工具)

2021年10月更新:

安全地更新 Apache Cordova 的 Node.js Visual Studio Tools

將 Visual Studio 變成功能強大的 Node.js 開發環境。

  • 免費且開放的原始碼
  • 智慧型程式碼完成
  • 先進的偵錯工具和分析
  • 與其他 Visual Studio 功能和協力廠商工具整合
  • Node.js、io.js、JavaScript、TypeScript、HTML、CSS 和 JSON 支援

深入瞭解Visual Studio 的Node.js 工具

Visual Studio 2015 的 Office Developer Tools

使用 Office 365 api 進行開發

  • Office 365API 工具使用 Visual Studio 2015 中的新已連線的服務,提供開發人員將 Office 365 api 整合到專案的引導式體驗。
  • 現在您可以在 Azure AD wizard 中選取 [使用已連線的服務設定單一 Sign-On],讓 Office 365 API 工具自動設定 ASP.NET MVC web 應用程式中的單一 Sign-On。
  • 當您將 Office 365 api 整合到您的專案中時,Office 365 API Tools 現在會從NuGet下載並安裝最新版本的 Office 365 API 用戶端程式庫 NuGet 套件。

SharePoint 增益集開發

  • 當您建立 SharePoint 增益集時,工具會將目標 SharePoint 版本設為您在 [專案建立嚮導] 中指定之 SharePoint 網站的偵錯工具版本。 wizard 會顯示選取的 SharePoint 版本,並可讓您覆寫該預設值。 您可以使用 Project 設計工具中的 [SharePoint] 索引標籤,在建立專案之後變更目標版本。
  • 這些工具現在會在目標版本 SharePoint 上線時,安裝包含SharePoint Online 用戶端物件模型的 NuGet 套件, (SPO-CSOM) 至您的專案。 這些工具會將 SharePoint Online CSOM 元件的參考加入至專案。 這些工具不再依賴 Microsoft 下載中心所發行的SharePoint Online 用戶端元件 SDK 。 這可讓您在未來使用 Visual Studio 中的 NuGet 封裝管理員,更輕鬆地升級 CSOM 元件。
  • 您現在可以使用 SAS 或 ACS 連接字串進行 Microsoft Azure 服務匯流排,以對SharePoint 增益集中的遠端事件接收器進行 debug 錯和疑難排解

Office 增益集開發

  • 在此版本中,這些工具一律會建立新的應用程式,以使用 v1.1 資訊清單而不是 v1.0 的 Office,讓您的應用程式可以支援 Office web 應用程式和 Office 2013 用戶端中的新功能。 針對使用 v1.0 資訊清單 Office 的現有應用程式,當使用需要 v1.1 資訊清單的任何新功能時,這些工具會將資訊清單升級為 v1.1。

深入瞭解Visual Studio 的 Office Developer Tools

Visual Studio 2015 的 GitHub 擴充功能

在 Visual Studio 中連線到 GitHub 存放庫的最簡單方式。

  • 容易安裝
  • Visual Studio 中 GitHub 的連線
  • 建立存放庫
  • 按一下即可複製存放庫
  • 將您的本機工作發行至 GitHub

深入瞭解 Visual Studio 的GitHub 延伸模組。

雲端負載測試

從全球 Azure 資料中心進行雲端式負載測試

設定執行負載測試所需的基礎結構變得更容易:現在,您可以從世界各地任何支援的 Azure 資料中心執行雲端式負載測試。

以雲端為基礎的負載測試現在支援 advanced agent 診斷

在此版本中,我們新增了針對雲端負載測試執行測試代理程式診斷的功能。

在雲端中進行偵錯工具很難,因為無法存取電腦,因此不一定可以從測試代理程式收集記錄檔或任何其他資訊。 然而,使用 advanced agent 診斷,您可以從測試代理程式收集記錄,並將它們附加至雲端負載測試結果。