コード例 #1
0
        public void ListColumn_Basics()
        {
            ListColumn <int> column = new ListColumn <int>(new NumberColumn <int>(-1));

            column[0].Add(1);
            column[0].Add(2);
            column[0].Add(3);

            // Test the outer column
            Column.Basics(() => new ListColumn <int>(new NumberColumn <int>(-1)), ColumnList <int> .Empty, column[0], (index) =>
            {
                IList <int> other = column[column.Count];
                other.Add(index);
                other.Add(index + 1);
                other.Add(index + 2);
                return(other);
            });

            // Test the ColumnList item members
            CollectionChangeVerifier.VerifyList(column[1], (index) => index % 20);

            // ColumnList.Empty handling
            ColumnList <int> empty = ColumnList <int> .Empty;

            Assert.Empty(empty);
            Assert.True(empty.Count == 0);
            Assert.True(empty.Contains(7) == false);
            Assert.Equal(-1, empty.IndexOf(3));

            Assert.True(empty == ColumnList <int> .Empty);
            Assert.False(empty != ColumnList <int> .Empty);

            // ColumnList.GetHashCode and Equals w/nulls
            ListColumn <string> stringColumn = new ListColumn <string>(new StringColumn());

            ColumnList <string> first = (ColumnList <string>)stringColumn[0];

            first.Add("One");
            first.Add(null);
            first.Add("Two");

            ColumnList <string> second = (ColumnList <string>)stringColumn[1];

            second.Add("One");
            second.Add(null);
            second.Add("Two");

            Assert.True(second == first);

            second[1] = "NotNull";
            Assert.NotEqual(second.GetHashCode(), first.GetHashCode());
            Assert.False(second == first);
        }
コード例 #2
0
        public static void ConstructTableObjectFromPostRequest(JSONTable jt, ref BaseTable bt, ref int pageIndex, ref int pageSize, ref int totalRows,
                                                               ref SqlFilter whereFilter, ref BaseFilter join, ref OrderBy orderBy)
        {
            pageIndex = jt.PageIndex;
            pageSize  = jt.PageSize;
            totalRows = jt.TotalRows;

            bt = (BaseTable)DatabaseObjects.GetTableObject(jt.TableName);

            ColumnList selCols = new ColumnList();

            foreach (JTableSelectColumn col in jt.JSelectColumns)
            {
                selCols.Add(bt.TableDefinition.ColumnList.GetByCodeName(col.ColumnName), true);
            }

            bt.SelectedColumns.Clear();
            bt.SelectedColumns.AddRange(selCols);

            if ((jt.JOrderByList != null))
            {
                foreach (JOrderBy jOrderBy in jt.JOrderByList)
                {
                    orderBy = new OrderBy(true, false);
                    orderBy.Add(bt.TableDefinition.ColumnList.GetByCodeName(jOrderBy.ColumnName), OrderByItem.ToOrderDir(jOrderBy.OrderDirection));
                }
            }

            if (jt.JWhereClause != null && jt.JWhereClause.Trim() != "")
            {
                whereFilter = new SqlFilter(jt.JWhereClause);
            }
        }
コード例 #3
0
        // Initialize the battery's collection of columns
        public void CreateColumnList()
        {
            for (int columnID = 1; columnID <= NumColumns; columnID++)
            {
                var column = new Column(columnID);

                // Set up allowed floor ranges
                if (NumBasements > 0)
                {
                    if (columnID == 1)
                    {
                        // Column takes care of basement floors
                        column.LowestFloor  = -(NumBasements);
                        column.HighestFloor = -1;
                    }
                    else
                    {
                        // Column takes care of above-ground floors
                        column.LowestFloor  = 1 + NumFloors / (NumColumns - 1) * (columnID - 2);
                        column.HighestFloor = NumFloors / (NumColumns - 1) * (columnID - 1);
                    }
                }
                else
                {
                    // No basement floors - therefore all floors are above-ground
                    column.LowestFloor  = 1 + NumFloors / NumColumns * (columnID - 1);
                    column.HighestFloor = NumFloors / NumColumns * columnID;
                }

                column.CreateElevatorList();
                column.CreateCallButtons();
                ColumnList.Add(column);
            }
        }
コード例 #4
0
ファイル: DBTable.cs プロジェクト: keguoquan/DBFrame
        private void GetFieldList(Type type)
        {
            foreach (MemberInfo mi in type.FindMembers(MemberTypes.Property | MemberTypes.Field, BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance, null, null))
            {
                string field_name = "";
                foreach (DBPrimaryKeyAttribute pk in mi.GetCustomAttributes(typeof(DBPrimaryKeyAttribute), false))
                {
                    //如果没有指定字段名称,使用MemberInfo的Name作为字段名称
                    field_name = string.IsNullOrEmpty(pk.FieldName) ? mi.Name : pk.FieldName;

                    PrimaryKey.Add(new DBPrimaryKey(mi, field_name, pk.DataType, pk.NotNull, pk.Default, pk.DBPrimaryType, string.Format("SEQ_{0}", this.AliasName)));
                }

                //如果是其他普通字段,只需要处理自己内部的属性
                if (mi.DeclaringType != type)
                {
                    continue;
                }
                foreach (DBColumnAttribute ca in mi.GetCustomAttributes(typeof(DBColumnAttribute), false))
                {
                    if (field_name == "")
                    {
                        //如果没有指定字段名称,使用MemberInfo的Name作为字段名称
                        field_name = string.IsNullOrEmpty(ca.FieldName) ? mi.Name : ca.FieldName;
                        ColumnList.Add(new DBColumn(mi, field_name, ca.DataType, ca.NotNull, ca.Default, ca.DBColumnOpType));
                    }
                }
            }
        }
コード例 #5
0
        public override void Selected(ILogLineColumnizerCallback callback)
        {
            ColumnList.Clear();
            // Create column header with cached column list.

            foreach (var col in _tagDict.Keys)
            {
                ColumnList.Add(new JsonColumn(_tagDict[col]));
            }
        }
コード例 #6
0
 /// <summary>
 /// 初始化构造函数
 /// </summary>
 /// <param name="dataTable"></param>
 public JsonDataTable(DataTable dataTable)
 {
     if (dataTable != null && dataTable.Rows.Count <= 0)
     {
         foreach (DataColumn item in dataTable.Columns)
         {
             ColumnList.Add(item.ColumnName);
         }
     }
     _dataTable = dataTable;
 }
コード例 #7
0
        /// <summary>
        /// Sets the Columns List
        /// </summary>
        public override void SetColumnLists()
        {
            base.SetColumnLists();
            int columnIndex = 0;

            foreach (var webElement in WebElementColumns)
            {
                var lineItem = new TestCentralHomeColumn(gridCssSelector, webElement, columnIndex, ControlPrefix);
                ColumnList.Add(lineItem);
                columnIndex++;
            }
        }
コード例 #8
0
 public override void SetColumnLists()
 {
     base.SetColumnLists();
     int columnIndex = 0;
     foreach (var webElement in WebElementColumns)
     {
         Report.Write("GridColumn by index: " + columnIndex);
         var lineItem = new ProfileHomeTabColumn(gridCssSelector, webElement, columnIndex, ControlPrefix);
         ColumnList.Add(lineItem);
         columnIndex++;
     }
 }
コード例 #9
0
        internal void RegisterColumn(Column column)
        {
            if (m_RepositioningColumn != null)
            {
                throw new WFormsException(StringConsts.COLUMN_ARE_REPOSITIONING_GRID_ERROR);
            }


            if (m_Columns.FirstOrDefault(col => string.Equals(col.ID, column.ID, StringComparison.InvariantCultureIgnoreCase)) != null)
            {
                throw new WFormsException(StringConsts.COLUMN_ID_EXISTS_GRID_ERROR + column.ID);
            }

            m_Columns.Add(column);
            columnsChanged();
        }
コード例 #10
0
        /// <summary>
        /// Columnizes a string array, making each seperate element the name of a Column object in a ColumnList.
        /// Optionally: if the string array is empty, a '*' column is added
        /// </summary>
        /// <param name="strArray">Array of column names</param>
        /// <param name="addAllColumnIfEmpty">Indicates wheter or not a '*' column should be added if the array is empty.</param>
        /// <returns></returns>
        public static ColumnList ToColumnList(this String[] strArray, bool addAllColumnIfEmpty = false)
        {
            ColumnList list = new ColumnList();

            if (strArray.Length == 0 && addAllColumnIfEmpty)
            {
                list.AddAllColumn();
                return(list);
            }

            foreach (String str in strArray)
            {
                list.Add(new Column(str));
            }

            return(list);
        }
コード例 #11
0
ファイル: Object.cs プロジェクト: JamieO53/xpangen.old
        public Column AddColumn(string name, string columnName = "", string nativeDataType = "", string oDBCDataType = "", string length = "", string precision = "", string scale = "", string isNullable = "", string isKey = "", string isIdentity = "")
        {
            var item = new Column(GenDataBase)
            {
                GenObject      = ((GenObject)GenObject).CreateGenObject("Column"),
                Name           = name,
                ColumnName     = columnName,
                NativeDataType = nativeDataType,
                ODBCDataType   = oDBCDataType,
                Length         = length,
                Precision      = precision,
                Scale          = scale,
                IsNullable     = isNullable,
                IsKey          = isKey,
                IsIdentity     = isIdentity
            };

            ColumnList.Add(item);
            return(item);
        }
コード例 #12
0
        public void DebugSetGridLists()
        {
            int columnIndex = 0;

            foreach (var webElement in WebElementColumns)
            {
                //Debug.WriteLine("GridColumn by index: '{0}'.", columnIndex);
                var lineItem = new SNGridColumn(gridCssSelector, webElement, columnIndex, ControlPrefix);
                ColumnList.Add(lineItem);
                columnIndex++;
            }

            int rowIndex = 0;

            foreach (var webElement in WebElementRows)
            {
                //Debug.WriteLine("GridRow by index: '{0}'.", rowIndex);
                GridRowType rowType = GetGridRowType(rowIndex);
                //Debug.WriteLine("GridRowType: '{0}'.", rowType);
                var lineItem = new SNGridRow(gridCssSelector, webElement, rowIndex, rowType, ColumnList, ControlPrefix);
                RowList.Add(lineItem);
                rowIndex++;
            }
        }
コード例 #13
0
 public IColumnType <ICreate_ColumnOptions <IExecute>, IExecute> WithColumn(string columnName)
 {
     _currentColumn = new ColumnDefinition(columnName);
     ColumnList.Add(_currentColumn);
     return((IColumnType <ICreate_ColumnOptions <IExecute>, IExecute>)(object) this);
 }
コード例 #14
0
ファイル: Select.cs プロジェクト: anesvijskij/meta.orm
 protected void AppendColumn(Column column)
 {
     _columns.Add(column);
 }