• FluorineFx使用自定义VO(实现IExternalizable接口)


    网上有文章“Flex与.NET互操作(十四)”描述了如何用AMF格式来传输数据。但是如下图

    Flex与.NET互操作(十四):FluorineFx的AMF(Action Message Format)协议通信

    客户端接收到的数据,其类型仅仅是Object,而不是原来自定义的Book类。

    在客户端里我们一旦使用as操作符,希望转换成Book类,就会返回null

    如何使得as操作符可用?

    安装FluorineFX后在FluorineFx\Samples\Flex\Remoting\Externalizable文件夹下面可以看到这样的示例。

    这个示例让server端的自定义类实现FluorineFx.AMF3.IExternalizable接口,client端的VO实现flash.utils.IExternalizable接口。

       [FluorineFx.TransferObject]
        
    public class AgreementVO : IExternalizable
        {
            
    private int _id;
    ...
    package example.externalizable
    {
        
    import flash.utils.IDataOutput;
        
    import flash.utils.IDataInput;
        
    import flash.utils.IExternalizable;
        
    import mx.collections.ArrayCollection;

        [RemoteClass(alias
    ="ServiceLibrary.AgreementVO")]
        
    public class AgreementVO implements IExternalizable
        {
            
    private var _id:int;

    注意如果是as项目,必须首先执行

    registerClassAlias("FxDotNet.Services.DTO.Book", BookVo);

    这样就可以了。

  • 相关阅读:
    [POJ2456]Aggressive cows(贪心,二分查找)
    [POJ1064]Cable master
    [Hadoop]单机尝试安装并测试Hadoop2.7.1(附带注释脚本)
    [HDOJ5500]Reorder the Books
    [UVA11076]Add Again
    [BNU弱校联萌]背水一战
    [HDOJ4911]Inversion
    POJ2735/Gym 100650E Reliable Nets dfs
    Gym 100650H Two Ends DFS+记忆化搜索
    HDU 4292 Food 最大流
  • 原文地址:https://www.cnblogs.com/sagacite/p/1783047.html
Copyright © 2020-2023  润新知