原文:Building Single Page Apps on the Microsoft Stack

感谢所有昨晚参与讨论“Building Single Page Apps on the Microsoft Stack”的人。我已经在下面附加了幻灯片和示例代码。

这里只是对讨论做一个简短总结。我认为单页应用程序比传统服务器端程序好,因为:

  1. 单页应用程序是有状态的——在传统服务器端应用程序里,每当导航到一个新页面,之前所有的状态都会丢失。这就好比重启电脑,之前的操作也会丢失一样。
  2. 在单页应用程序中,表示层距离不再遥远——在传统服务器端应用程序中,因为所有的事情都发生在服务器上,表示层和用户从距离和时间上被隔开了。单页应用程序中,表示层位于浏览器而不是服务器端。
  3. 单页应用程序遵守Web标准——构建单页应用程序时,可以轻松的利用HTML5和相关标准。

下面,我推荐使用下面四个技术来构建一个web程序:

  1. Knockout——创建表示层。
  2. ASP.NET WEB API——解析来自web服务器的JSON数据以及执行服务器端验证。
  3. HTML5——实现客户端验证。
  4. Sammy——实现客户端路由并且使用多个虚拟页面创建单页应用程序。

PPT

示例代码

http://pan.baidu.com/s/1bzn14