VO的两个使用技巧

在AS3中会经常使用VO(值对象),尤其是在Cairngorm之类的框架中。下面是我在工作中使用VO而总结出的两个使用技巧,与大家分享。

一、可用遍历方式赋值。如下面代码:

package vo
{
	public class Media
	{
		public var name:String;
		public var singer:String;
		public var format:String;
		
		public function Media()
		{
		}

	}
}

如果VO的属性与其它对象的属性一一对应。在转换时就可以用遍历赋值。如下面代码我们将XML属性解析成VO属性。

var ac:ArrayCollection = new ArrayCollection();
for each(var xml:XML in list)
{
	var media:Media = new Media();
	for each (var node:XML in xml.attributes()) 
	{
		var obj:Object = node.localName();
		media[obj] = xml.@[obj];
	}
	ac.addItem(media);
}

二、动态VO类。如下面代码:

package vo
{
	public dynamic class Media
	{
		public function Media()
		{
		}

	}
}

这种方法是我同事首先提出来的。其实用使用了动态类可动态添加属性这一特性。不过这样的VO在Flex Builder中是没有代码提示的,慎用。

上一篇上一篇: Flex SDK 3.1和Flex Builder 3.0.1升级
下一篇下一篇: itemRenderer的用法
来自文章来自: 本站原创
引用引用通告: 查看所有引用 | 我要引用此文章
标签Tags: Actionscript3 Architecture
相关相关日志:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
邮 箱: 邮件地址支持Gravatar头像,邮箱地址不会公开.
网 址: 输入网址便于回访.
内 容:
验证码:
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.
字数限制 1000 字 | UBB代码 开启 | [img]标签 关闭