예제 #1
0
 public PrimaryKeySchema(TableSchema table, string name)
 {
     base._database      = table.Database;
     this._table         = table;
     base._name          = name;
     this._memberColumns = new MemberColumnSchemaCollection();
 }
예제 #2
0
        private static string GetKeyMembers(Table table, MemberColumnSchemaCollection members, string name)
        {
            StringBuilder keyMembers = new StringBuilder();

            foreach (MemberColumnSchema member in members)
            {
                if (!table.Type.Columns.Contains(member.Name))
                {
                    throw new InvalidOperationException(string.Format(
                                                            "Could not find column {0} for assoication {1}.",
                                                            member.Name,
                                                            name));
                }

                Column column = table.Type.Columns[member.Name];
                if (keyMembers.Length > 0)
                {
                    keyMembers.Append(',');
                }

                keyMembers.Append(column.Member);
            }

            return(keyMembers.ToString());
        }
예제 #3
0
 public TableKeySchema(DatabaseSchema database, string name, string[] foreignKeyMemberColumns, string foreignKeyTableOwner, string foreignKeyTable, string[] primaryKeyMemberColumns, string primaryKeyTableOwner, string primaryKeyTable)
 {
     base._database = database;
     base._name     = name;
     if (foreignKeyTableOwner.Length <= 0)
     {
         this._foreignKeyTable = this.Database.Tables[foreignKeyTable];
     }
     else
     {
         this._foreignKeyTable = this.Database.Tables[foreignKeyTableOwner, foreignKeyTable];
     }
     this._foreignKeyMemberColumns = new MemberColumnSchemaCollection();
     foreach (string str in foreignKeyMemberColumns)
     {
         this._foreignKeyMemberColumns.Add(new MemberColumnSchema(this._foreignKeyTable.Columns[str]));
     }
     if (primaryKeyTableOwner.Length <= 0)
     {
         this._primaryKeyTable = this.Database.Tables[primaryKeyTable];
     }
     else
     {
         this._primaryKeyTable = this.Database.Tables[primaryKeyTableOwner, primaryKeyTable];
     }
     this._primaryKeyMemberColumns = new MemberColumnSchemaCollection();
     foreach (string str2 in primaryKeyMemberColumns)
     {
         this._primaryKeyMemberColumns.Add(new MemberColumnSchema(this._primaryKeyTable.Columns[str2]));
     }
 }
    public string GetMethodParameters(EntityManager entityManager, MemberColumnSchemaCollection mcsc, bool isDeclaration)
    {
        List <MemberColumnSchema> mcsList = new List <MemberColumnSchema>();

        for (int x = 0; x < mcsc.Count; x++)
        {
            mcsList.Add(mcsc[x]);
        }
        return(GetMethodParameters(entityManager, mcsList, isDeclaration));
    }
예제 #5
0
 public IndexSchema(TableSchema table, string name, bool isPrimaryKey, bool isUnique, bool isClustered)
 {
     base._database      = table.Database;
     this._table         = table;
     base._name          = name;
     this._isPrimaryKey  = isPrimaryKey;
     this._isUnique      = isUnique;
     this._isClustered   = isClustered;
     this._memberColumns = new MemberColumnSchemaCollection();
 }
예제 #6
0
 public TableKeySchema(string name, TableSchema foreignKeyTable, TableSchema primaryKeyTable, ExtendedProperty[] extendedProperties)
 {
     base._name                      = name;
     base._database                  = foreignKeyTable.Database;
     this._foreignKeyTable           = foreignKeyTable;
     this._primaryKeyTable           = primaryKeyTable;
     this._defaultExtendedProperties = extendedProperties;
     base._extendedProperties        = new ExtendedPropertyCollection(extendedProperties);
     this._foreignKeyMemberColumns   = new MemberColumnSchemaCollection();
     this._primaryKeyMemberColumns   = new MemberColumnSchemaCollection();
 }
예제 #7
0
        public PrimaryKeySchema(TableSchema table, string name, string[] memberColumns) : this(table, name)
        {
            this._memberColumns = new MemberColumnSchemaCollection();
            string[] strArray = memberColumns;
            int      index    = 0;

            while (true)
            {
                if (index >= strArray.Length)
                {
                    break;
                }
                string str = strArray[index];
                this._memberColumns.Add(new MemberColumnSchema(this.Table.Columns[str]));
                index++;
            }
        }
예제 #8
0
        private static string GetKeyMembers(Table table, MemberColumnSchemaCollection members, string name)
        {
            StringBuilder keyMembers = new StringBuilder();

            foreach (MemberColumnSchema member in members)
            {
                if (!table.Type.Columns.Contains(member.Name))
                    throw new InvalidOperationException(string.Format(
                        "Could not find column {0} for assoication {1}.",
                        member.Name,
                        name));

                Column column = table.Type.Columns[member.Name];
                if (keyMembers.Length > 0)
                    keyMembers.Append(',');

                keyMembers.Append(column.Member);
            }

            return keyMembers.ToString();
        }
예제 #9
0
 private static string[] ToNameArray(this MemberColumnSchemaCollection columns)
 {
     return(columns.Select(column => column.Name).ToArray());
 }