ASP.NET 和 Web 工具 2012.2 版本資訊 (RTW)

本檔說明 ASP.NET 和 Web 工具 2012.2 的版本。 這是 Visual Studio Web 工具及 ASP.NET 的更新。

安裝注意事項

ASP.NET 和 Web 工具 2012.2 for Visual Studio 2012 可以使用Web Platform 安裝程式安裝。 這是 Visual Studio 2012 或 Visual Studio Express 2012 for Web 的更新,這是必要的。 如果您沒有安裝 Visual Studio,將會安裝 Visual Studio Express 2012 for Web。

您也可以手動安裝 ASP.NET 和 Web 工具 2012.2。 您必須安裝 Visual Studio 2012 或 Visual Studio Express 2012 for Web。 然後使用下列指示:

  1. 從下載中心下載 ASP.NET 和 Web Frameworks 2012.2 安裝程式。
  2. 出現提示時,按一下 [執行]。 您也可以儲存檔案以供稍後執行。
  3. 確認您將更新的 Visual Studio 版本。 您可以啟動想要更新的 Visual Studio 來執行此動作。 然後按一下 [說明] 功能表項目。
    顯示 [說明] 下拉式功能表的螢幕擷取畫面。關於 Microsoft Visual Studio Express 2012 for Web 會以紅色圓圈。
  4. 如果您看到功能表項目「關於 Microsoft Visual Studio 2012 for Web」,請下載 Web Developer Tools 2012.2 - Visual Studio Express 2012 for Web。 否則,請下載 Web Developer Tools 2012.2 - Visual Studio 2012。
  5. 出現提示時,按一下 [執行]。 您也可以儲存檔案以供稍後執行。

注意

ASP.NET 和 Web 工具 2012.2 版不包含SQL Server Data Tools。 SQL Server和 Windows Azure SQL Database 提供更豐富的資料庫工具集,包括離線專案支援的開發、架構比較和增強的資料庫部署功能。 如需詳細資訊或安裝SQL Server Data Tools請造訪 https://go.microsoft.com/fwlink/?LinkID=237127

文件

ASP.NET 網站 https://www.asp.net () 提供 ASP.NET 和 Web 工具 2012.2 教學課程和其他資訊。

支援

ASP.NET 和 Web 工具 2012.2 正式發行並支援。 您可以使用一般支援通道。 您也可以將問題張貼至 ASP.NET 論壇 (https://forums.asp.net/) ,其中 ASP.NET 社群的成員經常能夠提供非正式支援。

軟體需求

ASP.NET 和 Web 工具 2012.2 需要 Visual Studio 2012 或 Visual Studio Express 2012 for Web。

ASP.NET 和 Web 工具 2012.2 中的新功能

本節說明已在 ASP.NET 和 Web 工具 2012.2 版本中引進的功能。

Tooling

  • Page Inspector

  • 編輯器

    • CoffeeScript、Mustache、Handlebars 和 JsRender 的支援語法醒目提示。
    • HTML 編輯器提供一個 Intellisense for一個程式碼系結。
    • LESS 編輯和編譯器支援,可讓您使用 LESS 建置動態 CSS。
    • 將 JSON 貼上為 .NET 類別。 使用此特殊貼上命令將 JSON 貼入 C# 或 VB.NET 程式碼檔案,Visual Studio 會自動產生從 JSON 推斷的 .NET 類別。
  • 行動模擬器支援會新增擴充性勾點,讓協力廠商模擬器可以安裝為 VSIX。 已安裝的模擬器會顯示在 F5 下拉式清單中,讓開發人員可以在各種行動裝置上預覽其網站。 若要深入瞭解這項功能,請參閱 Scott Hanselman 的新 BrowserStack 與 Visual Studio 整合的部落格文章。

Web Publishing

  • 網站專案現在與 Web 應用程式專案具有相同的發佈體驗,包括發佈至 Windows Azure 網站。

  • 選擇性發佈 – 針對一或多個檔案,您可以在發佈至 Web Deploy 端點) 之後執行下列動作 (:

    • 發佈選取的檔案。
    • 請參閱本機檔案與遠端檔案之間的差異。
    • 使用遠端檔案更新本機檔案,或使用本機檔案更新遠端檔案。

ASP.NET MVC 範本

  • 全新的 Facebook 應用程式範本可讓撰寫 Facebook Canvas 應用程式再容易不過了。 只需幾個簡單的步驟,您便可建立 Facebook 應用程式,進而取得已登入使用者的資料並將資料與他的朋友進行整合。 此範本包括一個新程式庫,處理建置 Facebook 應用程式時所涉及的所有連結,包括授權、權限、存取 Facebook 資料等等。 如需使用 Facebook 應用程式範本的詳細資訊,請參閱 https://go.microsoft.com/fwlink/?LinkID=269921
  • 全新的單一網頁應用程式 MVC 範本可讓開發人員使用 HTML 5、CSS 3 和熱門的 Knockout 與 jQuery JavaScript 程式庫,在 ASP.NET Web API 的基礎上建置互動式用戶端 Web 應用程式。 此範本包含「待辦事項」清單應用程式,示範使用 RESTful 伺服器 API 建置 JavaScript HTML5 應用程式的常見作法。 您可以在 閱讀詳細資訊 https://www.asp.net/single-page-application
  • 您現在可以建立 VSIX,將新的範本新增至 [ASP.NET MVC 新增專案] 對話方塊。 在這裡瞭解如何: https://go.microsoft.com/fwlink/?LinkId=275019
  • FixedDisplayModes 套件 – MVC 專案範本已更新為包含新的 'FixedDisplayModes' NuGet 套件,其中包含 MVC 4 中 Bug 的因應措施。 如需套件中所含修正的詳細資訊,請參閱此部落格文章 (/archive/blogs/rickandy/asp-net-mvc-4-mobile-caching-bug-fixed) 。

ASP.NET Web API

ASP.NET Web API已增強數個新功能:

  • ASP.NET Web API OData
  • ASP.NET Web API追蹤
  • ASP.NET Web API說明頁面

ASP.NET Web API OData

ASP.NET Web API OData 可讓您彈性地在任何資料來源上建置具有豐富商務邏輯的 OData 端點。 使用 ASP.NET Web API OData,您可以控制您想要公開的 OData 語意數量。 ASP.NET Web API OData 隨附于 ASP.NET MVC 4 專案範本中,也可以從 NuGet (https://www.nuget.org/packages/microsoft.aspnet.webapi.odata) 取得。

ASP.NET Web API OData 目前支援下列功能:

  • 套用 [Queryable] 屬性來啟用 OData 查詢語意。
  • 輕鬆驗證 OData 查詢,並限制一組支援的查詢選項、運算子和函式。
  • 參數會直接系結至 ODataQueryOptions,以取得查詢的抽象語法樹狀結構標記法,然後可以驗證並套用至 IQueryable 或 IEnumerable。
  • 藉由指定 [Queryable] 屬性的結果限制,啟用服務驅動分頁和下一頁連結產生。
  • 使用$inlinecount要求相符資源的內嵌計數。
  • 控制 Null 傳播。
  • $filter中的任何/所有運算子。
  • 依照慣例推斷實體資料模型,或以類似 Entity Framework Code-First 的方式明確自訂模型。
  • 藉由衍生自 EntitySetController 來公開實體集。
  • 公開導覽屬性、操作連結及實作 OData 動作的簡單、可自訂慣例。
  • 使用 MapODataRoute 擴充方法簡化路由。
  • 藉由公開多個 EDM 模型來支援版本控制。
  • 公開服務檔和$metadata,以便產生 Web API 的用戶端 (.NET、Windows Phone、Windows 市集 ) 等。
  • 支援 OData Atom、JSON 和 JSON 詳細資訊格式。
  • 建立、更新、部分更新 (PATCH) 和刪除實體。
  • 查詢及操作實體之間的關聯性。
  • 建立連線至路由的關聯性連結。
  • 複雜類型。
  • 實體類型繼承。
  • 集合屬性。
  • 枚舉。
  • OData 動作。
  • 以與 WCF Data Services 相同的基礎為基礎,也就是 ODataLib (https://www.nuget.org/packages/microsoft.data.odata) 。

如需 ASP.NET Web API OData 的詳細資訊,請參閱 https://go.microsoft.com/fwlink/?LinkId=271141

ASP.NET Web API追蹤

ASP.NET Web API追蹤會將來自 Web API 的追蹤資料與 .NET 追蹤整合。 它現在預設會在 Web API 專案範本中啟用。 Web API 的追蹤資料會傳送至 [輸出] 視窗,並透過 IntelliTrace 提供。 ASP.NET Web API追蹤可讓您透過與Windows Azure 診斷整合,在 Windows Azure 上裝載 Web API 時追蹤相關資訊。 您也可以使用 ASP.NET Web API追蹤 NuGet 套件 (https://www.nuget.org/packages/microsoft.aspnet.webapi.tracing) ,在任何應用程式中安裝和啟用 ASP.NET Web API追蹤。

如需設定和使用 ASP.NET Web API追蹤的詳細資訊,請參閱 https://go.microsoft.com/fwlink/?LinkID=269874

ASP.NET Web API說明頁面

ASP.NET Web API說明頁面現在預設包含在 Web API 專案範本中。 ASP.NET Web API說明頁面會自動為 Web API 產生檔,包括 HTTP 端點、支援的 HTTP 方法、參數和範例要求和回應訊息承載。 檔會自動從程式碼中的批註提取。 您也可以使用 ASP.NET Web API說明頁面 NuGet 套件 https://www.nuget.org/packages/microsoft.aspnet.webapi.helppage () ,將 ASP.NET Web API說明頁面新增至任何應用程式。

如需設定和自訂 ASP.NET Web API說明頁面的詳細資訊,請參閱 https://go.microsoft.com/fwlink/?LinkId=271140

ASP.NET SignalR

ASP.NET SignalR 可讓您輕鬆地將即時 Web 功能新增至您的 ASP.NET 應用程式,並在無法使用時使用 WebSocket 自動回復到其他技術。

如需使用 ASP.NET SignalR 的詳細資訊,請參閱 https://go.microsoft.com/fwlink/?LinkId=271271

ASP.NET 易記 URL

ASP.NET FriendlyURLs 可讓您輕鬆地讓 Web 表單開發人員產生更簡潔的 URL (,而不需要 .aspx 延伸模組) 。 它幾乎不需要任何設定,而且可以搭配現有的 ASP.NET v4.0 應用程式使用。 FriendlyURLs 功能也可藉由支援在桌面和行動裝置檢視之間切換,讓開發人員更輕鬆地將行動支援新增至其應用程式。

如需安裝和使用 ASP.NET 易記 URL 的詳細資訊,請參閱 http://www.hanselman.com/blog/IntroducingASPNETFriendlyUrlsCleanerURLsEasierRoutingAndMobileViewsForASPNETWebForms.aspx

已知問題和重大變更

本節說明 ASP.NET 和 Web 工具 2012.2 版本中的已知問題和重大變更。

安裝問題

Visual Studio 2012 的安裝順序錯亂

安裝 ASP.NET 和 Web 工具 2012.2 之後,安裝 Visual Studio 2012 的額外 SKU 將需要修復作業。 考量以下發生順序:

  1. 安裝 Visual Studio 2012 Express for Web
  2. 安裝 ASP.NET 和 Web 工具 2012.2
  3. 安裝 Visual Studio 2012 Professional、Premium 或 Ultimate

步驟 2 只會導致安裝 Express for Web 的更新。 若要確保步驟 3 期間安裝的其他 SKU 包含更新,您必須修復 ASP.NET 和 Web 工具 2012.2,以安裝最後一個 SKU 的更新。 如果步驟 1 和 3 中的 SKU 反轉,這也適用于。

在 Visual Studio 開啟時安裝 Microsoft ASP.NET 和 Web 工具 2012.2

如果在安裝 Microsoft ASP.NET 和 Web 工具 2012.2 期間開啟 VS,Visual Studio 最終可能會處於不良狀態。 建議您先關閉 Visual Studio 的所有實例,再繼續進行安裝。

在安裝期間取消 ASP.NET 和 Web 工具 2012.2 安裝程式

在安裝期間取消 ASP.NET 和 Web 工具 2012.2 安裝程式會讓 Visual Studio 處於不良狀態。 若要解決此問題,請遵循下列步驟:

  • 移至 [新增或移除程式]
  • 如果存在,請卸載 Microsoft ASP.NET 和 Web 工具 2012.2。
  • 重新安裝 Microsoft ASP.NET 和 Web 工具 2012.2

卸載 ASP.NET 和 Web 工具 2012.2 之後,ASP.NET MVC 4 範本和 Razor v2 網站範本遺失

卸載 ASP.NET 和 Web 工具 2012.2 也會卸載 Visual Studio 2012 中的所有 ASP.NET MVC 4 和 Razor v2 網站範本。

因應措施是修復 Visual Studio 2012 安裝,以重新安裝 ASP.NET MVC 4 和 Razor v2 網站範本。

工具問題

專案建立期間回報的 NuGet 錯誤

安裝 ASP.NET 和 Web 工具 2012.2 之後,您可能會在建立 MVC 4 專案時看到下列錯誤

顯示 Microsoft Visual Studio 錯誤訊息的螢幕擷取畫面。

ASP.NET 和 Web 工具 2012.2 隨附 NuGet 2.1,並將在 Visual Studio 2012 中升級延伸模組。 在某些情況下,VSIX 安裝程式將無法正確更新 VSIX。 下列步驟可讓您解決此問題:

  1. 以系統管理員身分啟動 Visual Studio 2012

  2. 移至 [工具擴充 > 功能和更新並卸載 NuGet。

  3. 關閉 Visual Studio

  4. 流覽至 ASP.NET 和 Web 工具 2012.2 安裝資料夾:

    1. 針對 Visual Studio 2012: Program Files\Microsoft ASP.NET\ASP.NET Web Stack\Visual Studio 2012
    2. 針對 Visual Studio 2012 Express for Web:Program Files\Microsoft ASP.NET\ASP.NET Web Stack\Visual Studio Express 2012 for Web
  5. 按兩下 NuGet.Tools.vsix 以重新安裝 NuGet

Web API 問題

剖析 $filter 和 DateTime 常值中的問題

OData URI 剖析器無法正確剖析部分日期時間常值。 例如,$filter=start eq datetime'2012-12-31T12:00' 無法正確剖析。 因應措施是使用完整常值,$filter=start eq datetime'2012-12-31T12:00:00'。

OData 不支援不區分大小寫的屬性名稱。

OData 不支援 OData 查詢和 odata 路徑中不區分大小寫的屬性名稱。

如果使用者在 javascript 用戶端和伺服器端有不同的大小寫,他們可能會遇到此問題。 此問題是在 odata 通訊協定中設計。 不過,許多使用者都會回報此問題。 若要解決此問題,使用者必須在 URL 中更正其案例。

預設 OData 路由慣例不支援導覽屬性上的 POST/PUT。

預設 OData 路由慣例不支援導覽屬性上的 POST/PUT。 我們遺漏預設慣例中常用的慣例。

若要解決此問題,使用者必須擴充新的路由慣例來支援它。

Facebook 範本問題

Facebook 應用程式範本只能使用 .NET 4.5

您必須在 [新增專案] 對話方塊的 [架構] 下拉式清單中選取 .NET 4.5,才能在 [ASP.NET MVC 4] 中看到 Facebook 應用程式範本。

即時更新控制器

Facebook 應用程式範本可讓使用者輕鬆地建立 Web API 控制器,以處理來自 Facebook 的即時更新。 如果您的開發電腦位於 NAT 後方,您的控制器可能無法在沒有進一步的網路設定的情況下運作。 如需詳細資訊,請參閱這裡: http://facebook.stackoverflow.com/questions/5259467/can-a-computer-behind-a-nat-router-receive-realtime-updates-from-facebook

查詢字串值與 Facebook OAuth 參數衝突

下欄欄位與 Facebook OAuth 對話方塊的回呼 URL 衝突。 請勿使用下列名稱新增您自己的查詢字串值:程式碼、錯誤、error_description error_reason。

搭配 Facebook 範本使用Page Inspector

偵錯 Facebook 應用程式時,您無法在 Visual Studio 2012 中使用 Page Inspector 功能。 Page Inspector目前不支援 iframe。

單頁應用程式範本問題

使用 JQuery 1.9/Knockout 2.2.1 更新時,執行預設 MVC SPA 專案時,未正確處理新的待辦事項編輯進入焦點事件。

使用 JQuery 1.9/Heavyout 2.2.1 更新時,執行預設的 MVC SPA 專案時,新的待辦事項編輯會在將新的待辦事項專案輸入到待辦事項清單之後,不再將焦點回到新的待辦事項編輯方塊。

若要因應措施參考 http://knockoutjs.com/documentation/hasfocus-binding.html ,並修正下列範例程式碼:

檔案todo.model.js
函式 todolist (資料) ,新增下列專案:
self.isSelected = ko.observable (false) ;

函式 todoList.prototype.addTodo,新增下列黑色文字:
self.isSelected (true) ;
self.newTodoTitle (「」) ;

檔案 index.cshtml,新增下列黑色文字:
<form data-bind=「submit: addTodo」>
<input class=「addTodo」 type=「text」 data-bind=「value: newTodoTitle, placeholder: 'Type here to add', blurOnEnter: true, hasfocus: isSelected, event: { blur: addTodo }」 />
</形式>