輕鬆上手Asp.net web api 2.1-twMVC#14
-
Upload
twmvc -
Category
Technology
-
view
285 -
download
2
description
Transcript of 輕鬆上手Asp.net web api 2.1-twMVC#14
![Page 1: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/1.jpg)
輕鬆上手ASP.NET Web API 2.1.2
陳傳興(Bruce)
![Page 2: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/2.jpg)
http://mvc.tw
連任三屆微軟最有價值專家(MVP)
微軟 TechDays & MSDN講座 講師
很多空姐企業內訓 講師
台中市電腦商業同業公會 特約講師
Global Windows Azure Bootcamp 2014 TW 講師
twMVC 核心成員及講師 (http://mvc.tw)
Study4.TW 成員及講師 (http://study4.tw)
著作
《ASP.NET MVC4 網站開發美學》
《ASP.NET MVC?網站開發美學》
簡介
2
![Page 3: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/3.jpg)
http://mvc.tw
coming soon???????????? >"<
3
![Page 4: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/4.jpg)
http://mvc.tw
請購買《ASP.NET MVC4網站開發美學》
今天不講ASP.NET Web API
4
![Page 5: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/5.jpg)
http://mvc.tw
TechDays Taiwan 2013 Dev303
http://mvc.tw/001g
Web Services 開發實戰: 使用 ASP.NET Web API 2
http://mvc.tw/001h
今天不講ASP.NET Web API 2
5
![Page 6: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/6.jpg)
http://mvc.tw
開Excel示範…
今天不會發生的事
6
![Page 7: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/7.jpg)
http://mvc.tw
今日主軸
7
Web API
Tools2.1.2
![Page 8: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/8.jpg)
http://mvc.tw
Global Error Handling
Attribute routing improvements
Help Page improvements
IgnoreRoute support
BSON media-type formatter
Better support for async filters
Query Parsing for the client formatting library
ASP.NET Web API 2.1.2
8
![Page 9: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/9.jpg)
http://mvc.tw
http://semver.org/lang/zh-TW/
所有NuGet套件未來都會循著Semantic Versioning規格。
ASP.NET MVC 5.1 RTM
ASP.NET Web API 2.1 RTM
版本號是"5.1.1"。
ASP.NET Web API 2.1.2 版本號是"5.1.2"
語意化版本
9
![Page 10: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/10.jpg)
http://mvc.tw
Visual Studio 2013 Update 2 RC
MVC / Web API範本有更新
預設載入
ASP.NET MVC 5.1.2
ASP.NET Web API 2.1.2(5.1.2)
Update 2 RC
10
![Page 11: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/11.jpg)
http://mvc.tw
Visual Studio 2013 Update 1
VS 2013 with ASP.NET and Web Tools 2013.1
http://www.asp.net/downloads
PM> Update-Package Microsoft.AspNet.WebApi
我不想裝 Update 2 RC
11
![Page 12: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/12.jpg)
12
Entity Framework 6.1
![Page 13: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/13.jpg)
http://mvc.tw
Entity Framework 6.1.0 Tools for Visual Studio
2012 & 2013
http://mvc.tw/001e
Entity Framework 6.1
13
![Page 14: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/14.jpg)
http://mvc.tw
來自星星資料庫的Code First
14
![Page 15: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/15.jpg)
15
Web API Tracing
![Page 16: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/16.jpg)
http://mvc.tw
Install-Package Microsoft.AspNet.WebApi.Tracing
Update-Package Microsoft.AspNet.WebApi.WebHost
config.EnableSystemDiagnosticsTracing();
開發時的好幫手
16
![Page 17: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/17.jpg)
17
全域錯誤處理
![Page 18: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/18.jpg)
http://mvc.tw
所有未處理的例外現在可以通過一個中央機制來記錄,並且
未處理例外的行為可以客製化。
ExceptionLogger
表示未處理的例外狀況記錄器。
ExceptionHandler
表示未處理的例外狀況處理常式。
System.Web.Http.ExceptionHandling命名空間
Global Error Handling
18
![Page 19: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/19.jpg)
19
elmah.io
![Page 20: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/20.jpg)
elmah.io
20
![Page 21: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/21.jpg)
21
屬性路由改善
![Page 22: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/22.jpg)
http://mvc.tw
屬性路由(Attribute routing)由Web API 2提供。在
Web API 2.1支援條件限制(constraint),版本控制與
基於header的路由選擇。
提供IDirectRouteFactory與RouteFactoryAttribute來
客製化路由。
提供IRoutePrefix與RoutePrefixAttribute來擴充路由
字首。
Attribute routing improvements
22
![Page 23: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/23.jpg)
23
Help Page改善
![Page 24: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/24.jpg)
http://mvc.tw
在說明文件中獨立呈顯Action方法的參數或回傳型別。
在說明文件中呈現資料模型註解。
UI設計更新。
Help Page improvements
24
![Page 25: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/25.jpg)
25
WebApiTestClient
![Page 26: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/26.jpg)
Install-Package WebApiTestClient
26
@*~\Areas\HelpPage\Views\Help\Api.cshtml*@
@Html.DisplayForModel("TestClientDialogs")@section scripts{
@Html.DisplayForModel("TestClientReferences")}
![Page 27: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/27.jpg)
27
支援IgnoreRoute
![Page 28: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/28.jpg)
http://mvc.tw
ASP.NET Web API 2.1支援IgnoreRoute的URL模式,只需
要透過HttpRouteCollection的IgnoreRoute擴充方法。
IgnoreRoute support
28
![Page 29: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/29.jpg)
29
支援BSON格式
![Page 30: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/30.jpg)
http://mvc.tw
http://bsonspec.org/
BSON [bee · sahn]
二進位JSON。
目前主要使用在MangoDB。
Tool:bsondump,http://mvc.tw/001f。
BSON media-type formatter
30
![Page 31: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/31.jpg)
31
支援async Filters
![Page 32: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/32.jpg)
http://mvc.tw
AuthorizationFilterAttribute
OnAuthorization
OnAuthorizationAsync
ActionFilterAttribute
OnActionExecuting
OnActionExecuted
OnActionExecutingAsync
OnActionExecutedAsync
ExceptionFilterAttribute
OnException
OnExceptionAsync
Better support for async filters
32
![Page 33: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/33.jpg)
33
支援Query Parsing
![Page 34: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/34.jpg)
http://mvc.tw
Web API Client Library可攜式版本援Qurey String的
解析與建立。
Query Parsing
34
![Page 35: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/35.jpg)
http://mvc.tw 35
![Page 36: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/36.jpg)
36
批次處理
![Page 37: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/37.jpg)
http://mvc.tw
ASP.NET Web API 2提供。
Batch poing
HTTP批次端點
透過MapHttpBatchRoute設定HTTP批次端點,提供HTTP處理批次
要求的能力。
OData批次端點
透過MapODataRoute設定OData Service批次端點,提供OData
Service處理批次要求的能力。
ASP.NET Web API Batching
37
![Page 38: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/38.jpg)
38
Web API 2 OAuth 2.0
![Page 39: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/39.jpg)
http://mvc.tw
ASP.NET Web API 2提供。
Web API 2內建OAuth Server,提供Token方式來進行會員
管理的功能。
透過OAuth Server,可整合Microsoft Account、
Twitter、Facebook、Google提供的Token進行驗證使用者
作業。
Extenal Login
39
![Page 40: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/40.jpg)
http://mvc.tw
http://www.asp.net/web-api
https://aspnetwebstack.codeplex.com/
http://www.odata.org/documentation/odata-
version-3-0/batch-processing/
http://oauth.net/2/
參考
40
![Page 41: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/41.jpg)
http://mvc.tw
好活動需要支持
感謝 KKTIX 贊助 twMVC 活動報名平台
41
![Page 42: 輕鬆上手Asp.net web api 2.1-twMVC#14](https://reader034.fdocuments.net/reader034/viewer/2022050801/55647650d8b42a5b318b5072/html5/thumbnails/42.jpg)
謝謝各位
• 本投影片所包含的商標與文字皆屬原著作者所有。• 本投影片使用的圖片皆從網路搜尋。• 本著作係採用姓名標示-非商業性-相同方式分享 3.0 台灣授權。閱讀本授權條款,請到
http://creativecommons.org/licenses/by-nc-sa/3.0/tw/,或寫信至Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA.
h t t p : / / m v c . t w