コード例 #1
0
ファイル: ModelMgr.cs プロジェクト: TheOnlyRealTodd/clifton
        public void AddRow(DataView view, Type recType, MappedRecord model)
        {
            DataRow row = NewRow(view, recType, model);

            view.Table.Rows.Add(row);
            AddRecordToCollection(model);
        }
コード例 #2
0
ファイル: ModelMgr.cs プロジェクト: somanet/clifton
        protected void AppendRow(DataView view, Type recType, MappedRecord record)
        {
            modelTables[recType].ForEach(mt => mt.BeginProgrammaticUpdate());
            DataRow row = NewRow(view, recType, record);

            view.Table.Rows.Add(row);
            AddRecordToCollection(record);
            modelTables[recType].ForEach(mt => mt.EndProgrammaticUpdate());
        }
コード例 #3
0
ファイル: ModelMgr.cs プロジェクト: tralivali1234/clifton
        protected void AppendRow(DataView view, Type recType, MappedRecord model)
        {
            modelTables.Single(kvp => kvp.Key == model.GetType()).Value.ForEach(mt => mt.BeginProgrammaticUpdate());
            DataRow row = NewRow(view, recType, model);

            view.Table.Rows.Add(row);
            AddRecordToCollection(model);
            modelTables.Single(kvp => kvp.Key == recType).Value.ForEach(mt => mt.EndProgrammaticUpdate());
        }
コード例 #4
0
ファイル: ModelMgr.cs プロジェクト: TheOnlyRealTodd/clifton
        protected DataRow NewRow(DataView view, Type modelType, MappedRecord model)
        {
            List <Field> fields = GetFields(modelType);
            DataRow      row    = view.Table.NewRow();

            foreach (Field field in fields.Where(f => f.IsTableField))
            {
                object val = modelType.GetProperty(field.Name).GetValue(model);
                row[field.Name] = val ?? DBNull.Value;
            }

            model.Row = row;

            return(row);
        }
コード例 #5
0
ファイル: ModelMgr.cs プロジェクト: somanet/clifton
        public void Replace(MappedRecord oldEntity, MappedRecord withEntity)
        {
            var oldEntityType  = oldEntity.GetType();
            var mappedEntities = mappedRecords[oldEntityType];
            int idx            = mappedEntities.Cast <MappedRecord>().IndexOf(e => e.Row == oldEntity.Row);

            if (idx != -1)
            {
                mappedEntities[idx] = (IEntity)withEntity;
            }

            var tables = modelTables[oldEntityType];

            tables.ForEach(mt => mt.Replace((IEntity)oldEntity, (IEntity)withEntity));
        }
コード例 #6
0
ファイル: ModelMgr.cs プロジェクト: TheOnlyRealTodd/clifton
        protected void AddRecordToCollection(MappedRecord record)
        {
            Assert.That(mappedRecords.ContainsKey(record.GetType()), "Model Manager does not know about " + record.GetType().Name + ".\r\nCreate an instance of ModuleMgr with this record collection.");

            mappedRecords[record.GetType()].Add((IEntity)record);
        }
コード例 #7
0
ファイル: ModelMgr.cs プロジェクト: somanet/clifton
        protected void AppendDecoupledRow(DataView view, Type recType, MappedRecord record)
        {
            DataRow row = NewRow(view, recType, record);

            view.Table.Rows.Add(row);
        }