我正在向CF定制标记传递一个结构。我想要这个自定义标签的CFM页面将这个结构赋值给一个动态创建的会话变量。创建会话变量时,将其分配给一个简单的值(如数字)时工作正常,但以下面的方式将其分配给结构时会失败。我可以在Coldfusion会话变量中存储结构吗?
<cfset Evaluate("SESSION.myVar#ATTRIBUTES.count# = #ATTRIBUTES.myStruct#")>
我认为这是可能的,但是当我尝试这样做,我得到一个错误: 复杂的对象类型不能转换为简单的值。
这是怎样的结构创建:
<cfset testStruct = StructNew()>
<cfset testStruct.something = 2>
并通过自定义标签传递:
<cf_myTag myStruct="#testStruct#" count="#i#">
我认为评估部分被搞乱这里的东西了。
你能告诉我们更多的代码?也许你在哪里创建/设置Struct,以及将它传递给Custom Tag的位置。您如何执行代码可能存在问题。 –
您确定从该cfset行引发错误吗?可以在Session范围中存储结构 – Henry