Chinaz.com - 中国站长站

匿名投稿 投稿指南 RSS订阅 站长资讯通告:
搜索: 您的位置主页>网络编程>.Net编程>阅读资讯:剖析ASP.NET AJAX的面向对象思想

剖析ASP.NET AJAX的面向对象思想

2008-07-06 19:52:00 来源:互联网 作者:编辑整理 【 评论:1

人们期待已久的ASP.NET AJAX v1.0正式版终于发布了。现在你能用Microsoft ASP.NET AJAX的javascript很容易的写出丰富的、交互式的web应用。尤其值得关注的是Microsoft AJAX Library增加了面向对象的支持,而以前javascript是不支持面向对象开发的。现在icrosoft AJAX Library能很好的支持类、名字空间、继承、接口、枚举、反射等特征。这些新增加的功能类似于.NET Framework,这使得开发ASP.NET AJAX应用变得容易维护,容易扩充。现在我们看看Microsoft AJAX Library是如何支持以上特征的。

1.类、成员和名字空间

在Microsoft AJAX Library中,所有的JavaScript类都继承自object(类似于.NET Framework库,都继承自object),在ASP.NET AJAX应用中你可以运用面向对象的编程模式创建继承自Microsoft AJAX基类的对象和组件,类有四种成员:字段、属性、方法、事件。字段和属性是名/值对,用于描述一个类的一个实例的特性的。字段是由简单类型构成且可直接访问,例如:

myClassInstance.name="Fred"。

属性可以是任何简单类型或引用类型,通过get和set方法访问。在ASP.NET AJAX中,get和set是独立的函数,并规定在函数名中使用前缀"get_" 或 "set_" ,例如要获取或设置cancel属性的值时,你可以调用get_cancel或set_cancel方法。

一个方法是完成一个活动的函数而不是返回一个属性的值。属性和方法在下面的例子里都有示范。

事件指示特指的动作发生。当一个事件发生时,它可以调用一个或多个函数。事件所有者可以完成等待事件发生的任何任务。

名字空间是对关联类的逻辑分组。名字空间使你可以对公共功能进行分组。

为了使ASP.NET Web页面具有ASP.NET AJAX功能,你必须添加控件到页面上,当页面启动时,参照ASP.NET AJAX库的脚本自动产生。

下面的例子显示了页面使用了控件。

  

      < asp:ScriptManager runat="server" ID="scriptManager" />
  下面的例子演示了如何使用Type.registerNamespace和.registerClass方法来把Person类增加到Demo名字空间中、创建类然后注册类。

  

      Type.registerNamespace("Demo");

  Demo.Person = function(firstName, lastName, emailAddress) {

  this._firstName = firstName;

  this._lastName = lastName;

  this._emailAddress = emailAddress;

  }

  Demo.Person.prototype = {

  getFirstName: function() {

  return this._firstName;

  },

  getLastName: function() {

  return this._lastName;

  },

  getName: function() {

  return this._firstName + ' ' + this._lastName;

  },

  dispose: function() {

  alert('bye ' + this.getName());

  }

  }

  Demo.Person.registerClass('Demo.Person', null, Sys.IDisposable);

在脚本文件Namespace.js中定义了类Person,制定了类的名字空间为"Demo"。运行页面Namespace.aspx,点击按钮将创建一个Demo.Person类的实例。

Tags:   ASP.NET   AJAX   面向对象  
责任编辑:水色皇朝
  • 请文明参与讨论,禁止漫骂攻击。 用户名:新注册) 密码: 匿名:
    评论总数: [ 查看全部 ] 网友评论
    关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助