コード例 #1
0
        public override bool Equals(object obj)
        {
            TableTwo p = obj as TableTwo;

            if (p == null ||
                p.name != name ||
                p.capacity != this.capacity ||
                !p.fieldNames.SequenceEqual(this.fieldNames) ||
                !p.fieldDataTypeNames.SequenceEqual(this.fieldDataTypeNames))
            {
                return(false);
            }
            for (int i = 0; i < capacity; i++)
            {
                bool containsRow = ContainsRow(i);
                if (containsRow != p.ContainsRow(i))
                {
                    return(false);
                }
                if (containsRow && !this[i].valuesAsStrings.SequenceEqual(p[i].valuesAsStrings))
                {
                    return(false);
                }
            }

            return(true);
        }
コード例 #2
0
ファイル: RelayObjectTwo.cs プロジェクト: substans/Relay
        public void LoadFromExistingRelayEntry(TableTwo pTable, int pObjectID, string pClassName)
        {
            table    = pTable;
            objectId = pObjectID;
#if DEBUG
            D.assert(table.ContainsRow(objectId), "object id does not exist! " + objectId);
            D.assert(table.GetValue <string>(pObjectID, CSHARP_CLASS_FIELD_NAME) == pClassName, "classname missmatch!");
#endif
            SetupCells();
        }