我有一个查询l.q. l是var范围:
var l = {};
如果我转储l:
writeDump(var:l, abort:true);
我得到
您可以看到q(l.q)显示[undefined struct element]。但是,如果我这样做:
writeDump(var:isQuery(l.q), abort:true);
我得到的是输出?倾倒l.q.recordCount返回1.
如果我转储l.q我收到错误:错误类型 java.lang.ArrayIndexOutOfBoundsException:[N / A]。
这让我非常头疼,因为在我的网站上,我变量随机随意消失。
有什么想法可以在这里发生什么?在Windows Server 2005上运行的CF9.0.1 Ent。
答案 0 :(得分:0)
看起来你填充的l.q变量无法正常工作。如何填充l.q?
如果您使用l = {}作为“本地”范围替换 - 请不要ColdFusion 9在函数内部已经有一个局部范围,您可以将其转储。
答案 1 :(得分:0)
这些转储是否在同一个地方?请记住,如果执行不返回任何内容的查询(例如更新或删除)但使用name参数,则该变量将设置为undefined。听起来这可能发生在这里。