其实目前这个版本的WebAPI还是蛮肿的,看代码量就知道了。
http://ASP.NET WebAPI和http://ASP.NET MVC其实是同一个架构下的产物,所以在最新的版本(vNext)里面干脆把这俩合并了。
目前版本的http://ASP.NET WebAPI可以看做是http://ASP.NET MVC的一个尝试,从底层架构上是完全抛弃了http://ASP.NET原本的核心的,可以任意选择宿主,例如SelfHost、OwinHost或者直接用http://ASP.NET也就是WebHost。
WebAPI其实可以视为就是砍掉了视图(View)的MVC,Controller、Action和Routing的策略几乎是一模一样的,当然Routing的策略有一些微调,而在vNext里面则有颠覆。
虽然没有View,但是WebAPI又引入了一个内容协商的机制,把返回的内容(对象)进行合适的序列化(Json、XML)返回回去。
重新设计的HttpRequestMessage和HttpResponseMessage以及DelegateHandler机制我觉得很轻巧很舒服。