예제 #1
0
        private bool GetLoadState()
        {
            NDO.Mapping.Relation r  = pm.NDOMapping.FindClass(typeof(Mitarbeiter)).FindRelation("dieReisen");
            FieldInfo            fi = typeof(NDO.Mapping.Relation).GetField("Ordinal", BindingFlags.NonPublic | BindingFlags.Instance);

            Assert.NotNull(fi);
            object o = fi.GetValue(r);

            Assert.NotNull(o);
            return(((IPersistenceCapable)m).NDOGetLoadState((int)o));
        }
예제 #2
0
 void AddRelations(TableNode tn, NDO.Mapping.Class cl)
 {
     foreach (RelationNode rn in tn.RelationNodes)
     {
         Relation rel = rn.Relation;
         // This is for FkRelations, which must exist as entries in the
         // tree in order to delete the relation mapping.
         if (rel.RelationDirection == RelationDirection.DirectedToMe)
         {
             return;
         }
         if (rn.RelatedTableNode.Table.Skipped)
         {
             continue;
         }
         NDO.Mapping.Relation r = cl.AddStandardRelation(rel.FieldName, rn.RelatedTableNode.Table.Namespace + "." + rn.RelatedTableNode.Table.ClassName, rel.IsElement, string.Empty, false, false, null);
         r.RelationName = rel.RelationName;
         ForeignIntermediateTableRelation fitr     = rel as ForeignIntermediateTableRelation;
         NDO.Mapping.ForeignKeyColumn     fkColumn = (NDO.Mapping.ForeignKeyColumn)r.ForeignKeyColumns.First();
         if (fitr == null)
         {
             fkColumn.Name = rn.Text;
         }
         else
         {
             fkColumn.Name = fitr.ForeignKeyColumnName;
             NDO.Mapping.MappingTable mtable = new NDO.Mapping.MappingTable(r);
             r.MappingTable = mtable;
             NDO.Mapping.ForeignKeyColumn cfkColumn = mtable.NewForeignKeyColumn();
             cfkColumn.Name      = fitr.ChildForeignKeyColumnName;
             mtable.ConnectionId = cl.ConnectionId;
             if (((DatabaseNode)tn.Parent).Database.OwnerName != string.Empty)
             {
                 mtable.TableName = ((DatabaseNode)tn.Parent).Database.OwnerName + "." + fitr.TableName;
             }
             else
             {
                 mtable.TableName = fitr.TableName;
             }
         }
     }
 }