智能导航的新功能
智能导航是ASP.NET最优秀的新属性之一,它涉及到了web应用程序,但感觉更像是传统的windows应用程序。Web应用程序一个最大的缺点就是HTTP结构,它要求回送到服务器,并需要完全刷新所查看的页面。这不仅会引起屏闪,而且对于长页面会导致回卷到页面顶部,改变控制聚焦等等。而对于windows应用程序,我们可以只更新局部屏幕内容而不影响页面的其余部分,只能导航将这点引入了web应用程序。
首先要注意的一点是,这只是internet explorer的属性,它需要IE6或更高版本的支持。同时,ASP.NET的一个主要目标是面向HTML,实现了跨浏览器兼容性,使得在很多情况下,这都不再是问题了。Intranets就是这样的一个例子,其中可以对浏览器进行控制。但是,我们也可以随意激活或禁用只能导航,这不会影响我们的应用程序。即使我们是面向多浏览器的,也可以使用只能导航,因为它可以探测浏览器,然后只对所支持的浏览器激活自己。
智能导航有四个属性:较少的屏闪、保持屏滚素位置、保持聚焦元素位置、保持历史记录中得前一个页面。这些属性是面向一些应用程序,他们需要大量回送请求,但其内容没有很大改变。也许最令人惊讶的地方是看,我们实际上不必做任何编码工作,智能导航是由用于独立页面的Page指令控制的,或者是在整个应用程序的web.config文件中设置的。