public CompoundPKMemberGeneratorHelper(IObjectSpace XPObjectSpace) : base(XPObjectSpace) { _dbColumn1 = new DBColumn { Name = "DBColumn1", ColumnType = DBColumnType.Int32 }; _dbColumn2 = new DBColumn { Name = "DBColumn2", ColumnType = DBColumnType.Int32 }; var dbColumns = new[] { _dbColumn1, _dbColumn2 }; DbTable.Columns.AddRange(dbColumns); DbTable.PrimaryKey = new DBPrimaryKey(dbColumns); _structPersistentClassInfo = XPObjectSpace.CreateObject <PersistentClassInfo>(); _structPersistentClassInfo.Name = "MainTable" + TableMapper.KeyStruct; _structPersistentClassInfo.PersistentAssemblyInfo = (PersistentAssemblyInfo)PersistentAssemblyInfo; _structPersistentClassInfo.SetDefaultTemplate(TemplateType.Struct); ClassGeneratorInfos.Add(_structPersistentClassInfo.Name, new ClassGeneratorInfo(StructPersistentClassInfo, DbTable)); }
public RefMemberGeneratorHelper(IObjectSpace XPObjectSpace) : base(XPObjectSpace) { var column = new DBColumn("Oid", false, "int", 0, DBColumnType.Int32); DbTable.PrimaryKey = new DBPrimaryKey(new[] { column }); var dbColumn = new DBColumn { Name = "DBColumn", ColumnType = DBColumnType.Int32 }; DbTable.Columns.Add(dbColumn); DbTable.Columns.Add(column); var refDbColumn = new DBColumn { Name = "refDbColumn", ColumnType = DBColumnType.Int32, IsKey = true }; DbTable.Columns.Add(refDbColumn); var primaryKeyTableKeyColumns = new StringCollection { "refDbColumn" }; DbTable.ForeignKeys.Add(new DBForeignKey(new List <DBColumn> { refDbColumn }, _refDbTable.Name, primaryKeyTableKeyColumns)); var item = new DBColumn("Oid", true, "int", 0, DBColumnType.Int32); _refDbTable.Columns.Add(item); _refDbTable.PrimaryKey = new DBPrimaryKey(new[] { item }); _refPersistentClassInfo = XPObjectSpace.CreateObject <PersistentClassInfo>(); _refPersistentClassInfo.Name = RefDbTable.Name; PersistentAssemblyInfo.PersistentClassInfos.Add(_refPersistentClassInfo); _refPersistentClassInfo.SetDefaultTemplate(TemplateType.Class); ClassGeneratorInfos.Add(_refPersistentClassInfo.Name, new ClassGeneratorInfo(_refPersistentClassInfo, RefDbTable)); }