【问题标题】:Coldfusion returning typed objects / AMF remotingColdfusion 返回类型化对象/AMF 远程处理
【发布时间】:2010-05-26 09:09:31
【问题描述】:

在 ColdFusion 中是否也可以做到这一点? 目前我正在使用 .Net/Fluorine 将对象返回给客户端。 在测试中,我喜欢传递代表 select 语句的字符串和我希望从我的服务返回的自定义对象。 Fluorine 有一个 ASObject 类,您可以将其设置为 var 'typeName';效果很好。 我希望这在 Coldfusion 中是可能的。有谁知道您是否可以以类似的方式设置返回对象的类型。 这对于大型集合特别有用,因为 Flash 播放器会将它们转换为同名的本地对象,从而节省了对集合的交互以将对象转换为特定的自定义对象。

 foreach (DataRow row in ds.Tables[0].Rows)
            {
                ASObject obj = new ASObject();

                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    obj.Add(col.ColumnName, row[col.ColumnName]);
                }
                obj.TypeName = pObjType;
                al.Add(obj);
            }

非常感谢,

【问题讨论】:

    标签: apache-flex flash coldfusion amf


    【解决方案1】:

    是的,它可以工作并且是内置的,因此您不必使用外部服务器端部件。

    ColdFusion 组件 (CFC) 是类的 ColdFusion 版本。

    ColdFusion 的 Flash/Flex 远程网关将 CFC 自动转换为 ActionScript 对象。

    请记住,CF 是基于 Java 的;所以路径和类名是区分大小写的。我认为 .NET 不是那样的。

    CFC 和 ActionScript 对象应以相同的顺序列出所有属性。在 AS3 中,您可以将它们定义为公共变量;在 CFC 中,您应该使用 cfproperty 标记定义它们。 ActionScript 对象应使用 RemoteClass 元数据标记来指定 CFC 的绝对位置。 CFC 的 cfcomponent 标记应指定别名属性,即 CFC 对象的绝对路径位置。

    如果您的服务中的 CFC 方法返回一个对象; cffunction 标记上的返回类型应该是 CFC 对象的绝对路径。

    我希望这与您一直在使用 .NET 所做的事情有很多相似之处;只是语法不同。我很确定您必须在 CFADmin 中启用 Flex / Flash Remoting,然后才能使用。

    CF Docs 中的某处应该有一个 CF 到 Flex 数据类型转换表。

    【讨论】:

    • 我是为 ui 开发的,所以我喜欢在决定要公开的服务之前决定我的 vos 的外观。所以说我已经在actionscript中写了vos。所以我喜欢将类名作为参数发送回我正在调用的服务。我目前在 c# 中转换了返回对象,例如 obj.TypeName = pObjType;
    • 您不必从 ColdFusion 进行正式演员表。只需确保已设置别名和 RemoteClass。
    • 谢谢杰夫。这就是我需要知道的。顺便说一句,喜欢这个节目。
    【解决方案2】:

    您还可以返回一个带有名为“type”的特殊键的结构,其中包含属性所代表的 AS 类的值,Flex 将填充这些对象。

    例如

    {
      id=2,
      name=kevin,
      __type__=com.company.user
    }
    

    (注意是'下划线下划线类型下划线下划线',格式被剥离)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-03
      • 1970-01-01
      • 2023-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多