ASP.NET AJAX 4.0 Preview 3(Part 1

自从Microsoft与jQuery合作以来,ASP.NET AJAX与jQuery就被定位为两个互补的AJAX库。既然jQuery 已经实现了如此多轻量级的AJAX特性,自然ASP.NET AJAX会继续专注于富客户端所需的一些重量级特性。

在ASP.NET AJAX 4.0 Preview 3里面,开发人员能够接触到的两个重要的新特性就是ADO.NET Data Service Client Library以及ASP.NET AJAX Template。对于熟悉ASP.NET服务器端开发但不熟悉客户端开 发的人来说,你可以简单地把这两个特性理解为存在于客户端的DataSource以及ListView,只要把数据通 过ADO.NET Data Service输出到前端,你就可以如同使用DataSource和ListView的组合一样在客户端开发 数据驱动的应用程序了。

在这篇文章里,我们将来看看如何使用ADO.NET Data Service Client Library,将ADO.NET Data Service暴露的REST数据接口直接拿到客户端JavaScript代码中去调用。文章中所用到的示例代码在文章 末尾,然后参考里面的AdoNetDataServiceDemo.aspx。

服务器端准备工作

在我们接下来要讲到的示例当中,我们会用到一个SQL Server 2005 Express Edition的数据库,里面 有一张名为OscarWinners的表,记录的是本年度奥斯卡获奖名单,字段包括AwardID、Award、Winner、 Film。然后我们为这张表创建ADO.NET Entity Model,接着再为它生成的实体类创建ADO.NET Data Service。这些都是在Visual Studio 2008中点几下鼠标就能完成的操作,就不再详细解释了。在ADO.NET Data Service的InitializeService()方法内,我们仅仅给它提供一个最宽松的规则:

config.SetEntitySetAccessRule("*", EntitySetRights.All);

到这里,我们就把服务器端的要做的工作都准备好了。打开你创建的ADO.NET Data Service地址,看 看是否输出了正确的Atom格式数据。如果没有,请检查一下你机器上的WCF是否已经正确安装和配置好了 。确保服务器端的准备工作都做好了,然后再进入客户端的开发工作。

连接Data Service

在客户端使用ADO.NET Data Service,我们需要接触到的类只有一个,那就是 Sys.Data.AdoNetServiceProxy。首先,我们要连接到ADO.NET Data Service,也就是使用ADO.NET Data Service的URL来实例化此类:

var dataService = new Sys.Data.AdoNetServiceProxy("WebDataService.svc");

然后,我们就可以利用dataService来调用ADO.NET Data Service进行CRUD操作了。

CRUD操作

所有的CRUD操作都在Sys.Data.AdoNetServiceProxy对象上执行,方法分别名为query()、insert()、 update()、remove()。在我们的示例当中,会用到query()和update()方法,另外两个方法是用起来和 update()很类似,就不再详细说明了。

查询操作

dataService.query("OscarWinners", function(result, context, operation) {
  /* display result */
}, errorHandler);

使用上述语句,我们查询出了OscarWinners表中的所有数据。随后的第一个回调函数会在查询成功时 被调用,因此我们可以在其中编写拼接HTML以显示结果的逻辑,具体的代码请参考下载中的 AdoNetDataServiceDemo.aspx。第二个回调函数会在查询失败时被调用,我们可以编写一个统一的错误处 理函数,名为errorHandler,然后将它传递给此参数。

如果需要传递复杂的查询参数,使用ADO.NET Data Service的格式就可以了,这可以在MSDN上查到。 例如说查询Slumdog Millionaire这部电影夺取了多少个奥斯卡奖项,然后把奖项按照名称排序输出,可 以这样子写:

dataService.query("OscarWinners?$filter=Film eq 'Slumdog Millionaire'&$orderby=Award", function(result, context, operation) {
  /* display result */
}, errorHandler);

时间: 2024-10-03 16:10:35

ASP.NET AJAX 4.0 Preview 3(Part 1的相关文章

ASP.NET AJAX 4.0 Preview 3(Part 2

在上一篇文章里,我们说到了如何使用ADO.NET Data Service Client Library能够轻松访问到存在服 务器端的数据,然而将数据展现出来仍需要人手拼接HTML这点就实在是让人难以接受,所以我们现在就来 看看如何利用ASP.NET AJAX Template解决这个问题.文章中所用到的示例代码在文章末尾,参考里面 的AspNetAjaxTemplateDemo.aspx. Sys.UI.DataView 为了解决展示数据的问题,我们需要用到一个全新的客户端控件,那就是Sys.

使用ASP.NET AJAX 1.0框架PreviewGlitz进行网页动画编程

本文基于目前最新框架的CTP版本,对它提供的淡入淡出动画功能在网页编程中进行试验. 一.引言 微软最新推出的AJAX框架为ASP.NET AJAX 1.0(下载地址为http://ajax.asp.net/downloads/default.aspx),此框架由ASP.NET 2.0 AJAX Extensions 1.0和ASP.NET AJAX Control Toolkit两个基本部分组成.此外,还提供了一个更新一些的CTP(社区测试试用)版本,下载页面如下图1所示: 图1:下载示例程序所

ASP.NET AJAX 4.0的一些新特性详解

目标 在本次动手实验中,您将学习如何: • 利用全新的客户端模板将数据轻松绑定到您的用户界面. • 使用 DataView 控件在客户端呈现数据. • 通过创建自定义标记扩展,扩展模板引擎. • 声明式地实例化行为和控件. 系统要求 您必须拥有以下工具才能完成本实验: • Microsoft Visual Studio 2008 或 2010. • ASP.NET 4.0 Preview 4AJAX 安装 您必须执行以下步骤来为本实验做好准备.主要包括下载和安装 ASP.NET AJAX 4.0

在虚拟主机上部署ASP.NET AJAX 1.0 Beta的程序集

ajax|asp.net|程序|虚拟主机 由于ASP.NET AJAX 1.0 Beta将所需的程序集注册到了GAC中,因此有朋友担心无法在虚拟主机上部署ASP.NET AJAX了(总不见得让服务商在GAC中安装那些程序集吧).其实解决这个问题的方法非常简单.由于ASP.NET在搜索GAC之前,会首先在Bin目录中查找所需的程序集,因此只需简单地将所需的程序集复制到Web Site的Bin目录下即可. 当然,这只是部署ASP.NET AJAX 1.0程序集的方式,并不排除由于虚拟主机上的设置导致

迁移你的Web页面到ASP.NET AJAX 1.0

ajax|asp.net|web|页面 如果你在Web站点中使用了Atlas Control Toolkit,那么这篇文章有助于迁移你的Web页面到ASP.NET AJAX 1.0,翻译自ASP.NET AJAX Control Toolkit网站. 随着ASP.NET AJAX 1.0 Beta版的发布,带来了很多根本性的变化,其中的一个变化就是从原先的版本中移除了"TargetProperties"对象. 幸运的是,迁移你的Web页面到新的形式非常的简单,仅仅按照如下步骤去做: 第

ASP.NET AJAX 1.0 RC开发10分钟图解_实用技巧

开发环境:VS2005+ASP.NET AJAX 1.0 RC 首先下载ASP.NET AJAX 1.0 RC安装文件,完成安装后即可进行我们的AJAX之旅了. 1.打开VS2005,点击"新建"-"文件"-"网站",选择"ASP.Net-AJAX Enabled Web Site"模板,这个模板是我们安装ASP.NET AJAX 1.0 RC后多出来的模板 2.可以看到左侧工具箱多了一个AJAX Extensions,下面包

ASP.NET AJAX 4.0的模版编程(Template Programming)介绍_实用技巧

ASP.NET AJAX 4.0 模版的使用 1. Introduction: 当Microsoft发布了它的ASP.NET 3.0时也同时发布了它的AJAX平台也就是ASP.NET AJAX. 不过说实话,当时相比其它的AJAX平台,它没有什么很突出的功能.不过当我评估ASP.NET AJAX 4.0的时候,我确实被它的特征给震住了.新的特征完全专注于浏览器技术,比如XHTML和javascript. 我非常钦佩ASP.NET AJAX小组.试试看看AJAX4.0的新特征: Template

asp.net ajax 1.0,hello world程序

ajax|asp.net|程序 asp.net ajax跟atlas有了很大不同.从这个简单的例子中可以看出几点.<1>新建一个asp.net ajax-enabled web site<2>页面布局.Server Controls的标签前缀(Tag Prefix)由atlas变为asp; <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.

创建定制的ASP.NET AJAX非可视化客户端组件

作者基于对微软ASP.NET AJAX 1.0框架的研究,本文继续讨论如何创建一个由基类Sys.Component派生的ASP.NET AJAX非可视化客户端组件,并展示它在Web页面中的用法. 一.简介 在本文中,我们将共同讨论如何创建一个由基类Sys.Component派生的ASP.NET AJAX非可视化客户端组件,并将展示它在Web页面中的用法. 具体说来,你将学习如何实现: ◆使用prototype设计模式以JavaScript定义一个非可视化组件类. ◆把一个非可视化组件注册为一个由