예제 #1
0
 public new TValue this[TIndex i]
 {
     [Script(DefineAsStatic = true)]
     get
     {
         return((TValue)Expando.GetArrayMember(this, i));
     }
     [Script(DefineAsStatic = true)]
     set
     {
         Expando.SetArrayMember(this, i, value);
     }
 }
예제 #2
0
 public new TMember this[object e]
 {
     [Script(DefineAsStatic = true)]
     set
     {
         Expando.SetArrayMember(this, e, value);
     }
     [Script(DefineAsStatic = true)]
     get
     {
         return((TMember)Expando.GetArrayMember(this, e));
     }
 }
예제 #3
0
            /// <summary>
            /// reads a table
            /// </summary>
            /// <typeparam name="TReturn"></typeparam>
            /// <param name="prototype"></param>
            /// <returns></returns>
            public TReturn[] ReadTable <TReturn>(TReturn prototype)
                where TReturn : class
            {
                if (!bExec)
                {
                    if (!ExecuteQuery())
                    {
                        return(null);
                    }
                }



                bool bOk = true;
                IArray <int, TReturn> a = new IArray <int, TReturn>();



                Expando q = Expando.Of(prototype);

                int counter = 0;

                while ((bOk) && (counter < 16))
                {
                    TReturn p = this.Read((TReturn)q.Clone());

                    if (p != null)
                    {
                        a.Push(p);
                    }
                    else
                    {
                        break;
                    }
                }


                return(a);
            }
예제 #4
0
 private TReturn Read <TReturn>(TReturn prototype)
     where TReturn : class
 {
     return(Expando.Copy(prototype, API.mysql_fetch_array(Handle, API.FetchArrayResult.MYSQL_ASSOC)));
 }
예제 #5
0
 public new static Expando <TMember> Of(object e)
 {
     return(Expando.Of(e).To <Expando <TMember> >());
 }