`
evget
  • 浏览: 144798 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
文章分类
社区版块
存档分类

ASP.NET MVC框架内置AJAX支持技术的相关探讨

阅读更多
传统型ASP.NET Web Forms是基于同时包含了表现层和后台代码的Web页面,所以,紧随其后出现的ASP.NET AJAX,特别是这个框架的服务器端控件并没有像它们本应该的那样光芒四射。于是,很多跟随AJAX时髦的ASP.NET开发者只是向ASP.NET页面中随意地放置一些UpdatePanel控件以便使其程序实现基本的AJAX支持。实际上,这只是防止了页面的“闪烁”,而根本上页面还是进行了完整的回发,并且要经历整个页面的生存周期。为了消除ASP.NET Web Forms所依赖的页面回寄和ViewState等复杂技术,微软又推出了ASP.NET应用开发的另一个可选框架—ASP.NET MVC。也正是基于前面的分析,ASP.NET MVC中也加入了部分AJAX支持技术。但是,目前的ASP.NET MVC框架尚未发布其正式发行版本,在许多方面仍存在不完善的地方,尤其是对于AJAX技术仅提供了有限的支持。本文中,我们将通过一个简单的例子来讨论如何借助于ASP.NET MVC Preview 4框架提供的Ajax.Form方法实现基本的AJAX编程支持。

一、 引言

如果你详细研究一下ASP.NET MVC框架每个版本之间的变化信息有关资源,那么你会注意到新版本的框架中提供了一组新对象,例如AjaxHelper和AjaxExtensions。借助于这些对象,你可以为你的ASP.NET MVC应用程序添加流行的Ajax支持功能。此外,借助于客户端JavaScript脚本框架JQuery你也能实现同样的目的,而且借助于开源工程 MVCContrib似乎你也能够实现同样的Ajax支持。
本文中,我们针对ASP.NET MVC Preview 4框架提供的Ajax作一简单的讨论,分析其提供的基本的Ajax支持功能。

二、 实例剖析

(一)创建示例ASP.NET MVC工程

启动Visual Studio 2008(我使用的是Team System版本)创建一个新的ASP.NET MVC工程,并命名为MvcBuiltinAjax(注:本实例中使用的是目前最新的ASP.NET MVC Preview 4;而且在本例中我们并不关心是否加入单元测试支持框架的问题)。

(二)修改视图页面Index.aspx

请注意,本例中我们直接修改视图页面Index.aspx。我们将在此页面中添加一个文本框和一个按钮控件。我们的目的是,当点击此按钮控件时,执行表单提交功能。通过此过程,我们将回调服务器端并取得相应的字符串,而且此字符内容将被以Ajax方式填入到按钮控件旁边的div元素中。图1展示了实例程序的某一运行时刻的快照。图中,当我们在文本框中输入字符串“张三”时,后台控制器Action方法查询已有数据串,如果其中没有刚刚输入的内容,则显示“ 可以使用这个名字!”;否则,显示 “此名字已经被使用了!”的提示。

现在,我们来看一下修改视图Index.aspx中涉及的主要内容,如下所示:

以下为引用的内容:
<asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server">
    <p> 
       <%using (Ajax.Form("ExamineTextBox", new AjaxOptions { UpdateTargetId = "resultDiv" })) 
        { %> 
            <%= Html.TextBox("textBox1")%>
            <input type="submit" value="Button"/>
            <span id="resultDiv"/>
     <% } %> 
    </p> 
</asp:Content>

请注意这里所使用的Ajax.Form帮助函数和引用span元素的UpdateTargetID属性的值。有关AjaxOptions的用法也有许多值得考察的地方,后面再进行讨论。

未完,原文地址:http://www.evget.com/zh-CN/Info/ReadInfo.aspx?id=9128
分享到:
评论

相关推荐

    ASP.NET MVC框架开发系列课程(1):MVC模式与ASP.NET MVC框架概述

    本课程将深入探讨MVC模式和ASP.NET MVC框架的基础知识,帮助开发者理解和掌握这一强大的Web开发工具。 **MVC模式** MVC模式是一种软件设计模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制...

    asp.net mvc 示例项目

    通过研究这些代码,你可以更好地理解ASP.NET MVC框架的工作原理,学习如何创建自己的ASP.NET MVC应用。这个示例项目是一个宝贵的资源,它将理论知识与实际应用相结合,帮助你掌握开发高效、可扩展的Web应用的技能。

    ASP.NET MVC4开发指南(带目录)

    5. **jQuery和AJAX支持**:ASP.NET MVC4内建对jQuery的支持,使得开发者能轻松实现客户端脚本和异步操作。 6. **移动设备支持**:内置的移动视图检测和响应式设计支持,让开发者可以轻松创建适应不同设备的网站。 ...

    professional asp.net mvc 2

    《Professional ASP.NET MVC 2》是一本专注于微软ASP.NET MVC框架的专业书籍,旨在帮助开发者深入理解和熟练运用这一强大的Web应用程序开发技术。ASP.NET MVC是一种基于模型-视图-控制器(Model-View-Controller)...

    asp.net MVC 源码

    MVC框架内置对jQuery Ajax的支持,可以方便地创建异步操作,更新部分页面,提高用户体验。 10. **Razor视图引擎**: Razor是一种轻量级的视图引擎,它的语法简洁且直观,提供了更高效地编写视图的方式。 以上...

    ASP.NET MVC框架开发系列课程(17):Model Binder

    ASP.NET MVC框架是微软推出的一款用于构建Web应用程序的开源框架,它基于模型-视图-控制器(MVC)设计模式,提供了高度可测试性和灵活性。在这一系列课程的第17部分,我们将深入探讨“Model Binder”这一核心组件,...

    ASP.NET MVC 5 高级编程(第5版)--中文高清完整版--带书签目录

    《ASP.NET MVC 5 高级编程(第5版)》是 Jon Galloway 等作者撰写的一本深入探讨ASP.NET MVC 5框架的专业书籍。该书详细讲解了如何利用这一强大的Web开发技术构建高效、可维护的Web应用程序。在这一中文高清完整版中...

    asp.net mvc4+汉化包

    ASP.NET MVC4是微软开发的一款用于构建Web应用程序的框架,它是基于ASP.NET平台的,专为构建可测试、模块化和高性能的Web应用程序而设计。这个"asp.net mvc4+汉化包"是为了方便中国开发者使用,提供了中文语言支持。...

    ASP.NET MVC框架开发系列课程(8):AJAX(Level 200)_Video.zip

    3. **ASP.NET MVC中的AJAX辅助方法**:介绍MVC框架提供的内置AJAX辅助方法,如`Ajax.BeginForm()`和`Ajax.ActionLink()`,它们简化了在视图中创建AJAX调用的过程。 4. **Partial Views**:在AJAX请求中使用部分视图...

    ASP.NET MVC4开发指南

    本指南将深入探讨ASP.NET MVC4的各个方面,帮助你成为一名熟练的ASP.NET MVC4开发者。 首先,我们要理解MVC模式的基本概念。模型(Model)是应用程序的核心,负责处理业务逻辑和数据管理。视图(View)是用户界面,...

    ASP.NET MVC框架开发系列课程(8)

    总结来说,ASP.NET MVC框架结合AJAX技术,可以实现高性能、高交互性的Web应用。在这一系列课程的第八部分,你将学习如何在ASP.NET MVC项目中有效地利用AJAX,包括发起AJAX请求、处理服务器响应、更新页面内容以及...

    ASP.NET MVC网站编程案例精解 案例源码

    总之,这个"ASP.NET MVC网站编程案例精解 案例源码"涵盖了ASP.NET MVC框架的许多核心概念和技术。通过学习和研究这些案例,开发者可以提升在Web开发领域的技能,理解如何构建高效、可扩展且易于维护的网站应用。在...

    ASP.NET MVC3.0 高级编程完整版

    7. **AJAX支持**:ASP.NET MVC3.0提供了内置的jQuery库,以及与jQuery AJAX的集成,使得开发者能够轻松地创建异步交互的Web应用。 8. **单元测试**:MVC架构鼓励编写可测试的代码。ASP.NET MVC3.0包含了一些工具和...

    asp.net mvc源码

    ASP.NET MVC内置了jQuery库,提供了AjaxActionLink和Ajax.BeginForm等控件,支持异步更新视图,从而实现无刷新用户体验。 通过深入学习和实践ASP.NET MVC源码,开发者可以更好地理解框架的工作原理,提升开发效率...

    ASP.NET 3.5 MVC 架构与事件源代码第 三部分实战篇

    2. **ASP.NET 3.5**:这是微软的Web开发平台,提供了丰富的功能和服务,支持ASP.NET MVC框架。3.5版本是在.NET Framework 3.0基础上的扩展,引入了LINQ、AJAX支持和新的编程模型。 3. **路由**:在ASP.NET MVC中,...

    ASP.net MVC 4 框架揭秘

    本书《ASP.NET MVC 4框架揭秘》由蒋金楠撰写,深入浅出地探讨了该框架的核心概念和技术。 1. **MVC模式**:ASP.NET MVC 4基于模型-视图-控制器(MVC)设计模式,这是一种将业务逻辑、用户界面和应用程序控制分离的...

    ASP.NET MVC 5高级编程

    8. **AJAX支持**:ASP.NET MVC 5提供了内置的对AJAX的支持,允许创建异步交互的页面,提高用户体验。通过jQuery或其他JavaScript库,可以轻松实现无刷新更新和异步数据操作。 9. **WebAPI集成**:ASP.NET MVC 5还...

Global site tag (gtag.js) - Google Analytics