|
From: Peter S. <sz...@us...> - 2004-04-29 11:24:18
|
Update of /cvsroot/nhibernate/nhibernate/src/NHibernate/Collection In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2476/NHibernate/Collection Modified Files: CollectionPersister.cs Log Message: Added alias creation to constructor Index: CollectionPersister.cs =================================================================== RCS file: /cvsroot/nhibernate/nhibernate/src/NHibernate/Collection/CollectionPersister.cs,v retrieving revision 1.19 retrieving revision 1.20 diff -C2 -d -r1.19 -r1.20 *** CollectionPersister.cs 19 Apr 2004 20:04:08 -0000 1.19 --- CollectionPersister.cs 29 Apr 2004 11:24:08 -0000 1.20 *************** *** 45,48 **** --- 45,49 ---- private IType elementType; private string[] keyColumnNames; + private string[] keyColumnAliases; private string[] indexColumnNames; private string[] unquotedIndexColumnNames; *************** *** 78,81 **** --- 79,83 ---- role = collection.Role; ownerClass = collection.OwnerClass; + Alias alias = new Alias("__"); sqlOrderByString = collection.OrderBy; *************** *** 87,90 **** --- 89,94 ---- sqlWhereStringTemplate = hasWhere ? Template.RenderWhereStringTemplate(sqlWhereString, dialect) : null; + //hasOrphanDelete = collection.hasOrphanDelete(); + cache = collection.Cache; *************** *** 92,100 **** --- 96,107 ---- int span = collection.Key.ColumnSpan; keyColumnNames = new string[span]; + string[] keyAliases = new string[span]; int k=0; foreach(Column col in collection.Key.ColumnCollection) { keyColumnNames[k] = col.GetQuotedName(dialect); + keyAliases[k] = col.Alias(dialect); k++; } + keyColumnAliases = alias.ToAliasStrings(keyAliases, dialect); isSet = collection.IsSet; *************** *** 355,359 **** public object ReadKey(IDataReader dr, ISessionImplementor session) { //TODO: h2.0.3 = use keyColumnAliases instead of keyColumnNames ! return KeyType.NullSafeGet(dr, keyColumnNames, session, null); } --- 362,366 ---- public object ReadKey(IDataReader dr, ISessionImplementor session) { //TODO: h2.0.3 = use keyColumnAliases instead of keyColumnNames ! return KeyType.NullSafeGet(dr, keyColumnAliases, session, null); } |