DBOperation.as:
import flash.events.*;
        import flash.net.NetConnection;
        import flash.net.ObjectEncoding;
        import flash.net.Responder;
        
        import mx.collections.ArrayCollection;
        import mx.controls.List;
        import mx.rpc.events.ResultEvent;
        import mx.collections.ArrayCollection;

        public class DBOperation
        {
                 private var nc:NetConnection;
                 private var responder:Responder;

                 public var list:ArrayCollection;
                 
                 public function DBOperation():void{
                        nc = new NetConnection();
                        nc.objectEncoding = ObjectEncoding.AMF0;
                        nc.connect("rtmp://localhost/ins");
                 }
                 
                
                public function getSolutionData(sql:String):Boolean
{
            responder=new Responder(getSolutionList,null);
                        nc.call
("dbo.getSolutionData",responder,sql);
                        return true; 
                }

                
                public function getSolutionList
(solution:Object):void{
                        var solutionList:Array = new Array();
                        for(var items:String in solution) 
                        {
                                solutionList.push
({label:items,title:solution[items].title,owner:solution
[items].owner,submitTime:solution[items].submitTime,image:solution
[items].image,imgInstruction:solution[items].imgInstruction});
                        }
                        list = new ArrayCollection(solutionList);
                                
                }
        }

datagrid.mxml:

<mx:Script>
                <![CDATA[
                        import DBOperation;
                        import mx.collections.ArrayCollection;
                        
                        [Bindable]
                        private var solutionList:ArrayCollection;
                        
                        private function initDG():void{
                                var dbo:DBOperation=new 
DBOperation();
                                dbo.getSolutionData("some sql 
strings");
                                
                                solutionList=dbo.list;
                        }                       
                ]]>
        </mx:Script>

my problem is I can get the data from DBOperation class,but I can not 
assign it to solutionList by "solutionList=dbo.list;"

The debug information says dbo.list=null, however inside DBOperation 
the list is full of data.

What's wrong with it??

Thanks!

Reply via email to