当前位置 > 首页 > Asp.net

[翻译]ASP.NET MVC 3 开发的20个秘诀(十三)[20 Recipes for Programming MVC 3]:实现Ajax增强用户体验

2011-12-18 17:16:00来源:Asp.net

议题

单击链接的时候,由于网页刷新内容需要重新加载,会感觉整个过程变的非常缓慢,尤其在我们只需要更新少量内容的时候感觉更加明显。

解决方案

修改之前的示例,将Html.ActionLink 创建的链接更改为由Ajax辅助类Ajax.ActionLink创建,使链接点击时只加载需要改变的内容。

讨论

MVC框架提供了几个非常棒的辅助类。在目前为止本书使用最后的就是HtmlHelper类,几乎之前所有的视图类都至少使用过一次。在这个秘诀中,将使用AjaxHelper辅助类替换BooksIndex视图中所有的HtmlHelper辅助类。

要想实现Ajax视需要一点额外的设置才能使用的。通常情况下,也正是这点儿额外的工作阻止了开发人员使用它。但是我认为花费额外的时间去实现它是值得的,因为这将使用户在使用时获得非常好的体验。

在程序的配置文件Web.config文件中,设置ClientValidationEnabled和UnobtrusiveJavaScriptEnabled值为True

<?xml version="1.0"?>
<configuration>
<connectionStrings>
<add name="ApplicationServices" connectionString=
"data source=.\SQLEXPRESS;Integrated Security=SSPI;
AttachDBFilename=|DataDirectory|aspnetdb.mdf;
User Instance=true"
providerName="System.Data.SqlClient"/>
</connectionStrings>
<appSettings>
<add key="webpages:Version" value="1.0.0.0" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
<add key="smtpServer" value="localhost" />
<add key="smtpPort" value="25" />
<add key="smtpUser" value="" />
<add key="smtpPass" value="" />
</appSettings>
<system.web>
<compilation debug="true" targetFramework="4.0"

  • 万众"7"待 杰作登场--湖南微软Windows 7社区发布会

    2009-10-31 3:27:00

    阅读: 3 评论: 0 作者: 阿修 发表于 2009-10-31 01:50 原文链接 10 月 24 日下午 2 点,微软 Windows 7 社区长沙发布会在富丽华大酒店如火如荼的

  • 翻译js的gettime

    2009-7-27 10:10:00

    今天在用到一个js页面的功能,需要翻译成c#的代码,其中有一个js获取时间的问题,查了一些资料,终于搞定了 js的gettime 定义和用法 getTime() 方法可返回距 19

  • 从主频之争到多核之争,摩尔定律还能走多远?

    2009-5-13 16:09:00

    从主频之争到多核之争,摩尔定律还能走多远? 本文通过对几个基础问题的探讨,从IC设计角度介绍一点处理器的知识和发展。希望对长时间做高级语言开发的朋友有点帮助,随便看看权当娱乐。

  • 详解AJAX核心 —— XMLHttpRequest 对象

    2009-4-14 10:52:00

    摘要: 我要说的内容都是非常基础的内容,高手就免看了,如果看了欢迎给点意见啊。新手或者对低层还不是很了解的人可以看看,帮助理解与记忆。XMLHttpRequest 对象是AJAX功能的核心,要开发A

  • Windows XP SP4升级包或于五年后问世?

    2009-5-23 17:56:00

    早在2006年年中Windows XP SP3远未发布的时候,就有传闻说微软还会为这套经典操作系统推出第四个SP服务包,但此后就再也没有更多消息。在Windows XP RTM大限迫近的时候,ZDN

  • 用UDP实现局域网内聊天程序

    2009-6-11 1:56:00

    摘要: 花一天的时间,根据老大的指示,用UDP做了一个局域网内聊天的程序。以前从没做过UDP通信方面的程序,只做过一些比较管理的SOCKET TCP通讯,所以刚开始的时候,还是有点不知从何下手的味道

  • 讨论在.NET 中通过静态初始化实现Singleton的一个致命缺点

    2011-11-1 17:49:00

    有不少很好的文章介绍过这个主题了,因此也就不再赘述怎么实现了,都在下面的参考资料里了,一看便知。 我想说的这个缺点是静态构造函数有可能发生异常,一旦 静态构造函数引发异常,不仅会导致访问失

  • NVelocity系列:NVelocity配置详解

    2009-3-22 12:18:00

    摘要: NVelocity配置详解 阅读全文 -------------------------- 新闻: 鲍尔默:微软对首个“后盖茨”OS很自豪 导航: 博客园首页 知识库 新闻 招

  • Handling Events within Silverlight Control Templates – AutoCompleteBox Example

    2009-7-1 2:12:00

    One of the great features Silverlight offers is the ability to customize controls by using control

  • 几种 HtmlEncode 的区别

    2010-2-26 12:47:00

    问题: HttpUtility.HtmlDecode ,HttpUtility.HtmlEncode  与  Server.HtmlDecode ,Server.HtmlE