|
From: <fab...@us...> - 2011-03-22 18:46:26
|
Revision: 5503
http://nhibernate.svn.sourceforge.net/nhibernate/?rev=5503&view=rev
Author: fabiomaulo
Date: 2011-03-22 18:46:20 +0000 (Tue, 22 Mar 2011)
Log Message:
-----------
Fix NH-2531
Modified Paths:
--------------
trunk/nhibernate/src/NHibernate/Impl/CriteriaImpl.cs
Modified: trunk/nhibernate/src/NHibernate/Impl/CriteriaImpl.cs
===================================================================
--- trunk/nhibernate/src/NHibernate/Impl/CriteriaImpl.cs 2011-03-22 18:28:13 UTC (rev 5502)
+++ trunk/nhibernate/src/NHibernate/Impl/CriteriaImpl.cs 2011-03-22 18:46:20 UTC (rev 5503)
@@ -658,10 +658,7 @@
root.subcriteriaList.Add(this);
root.subcriteriaByPath[path] = this;
- if (alias != null)
- {
- root.subcriteriaByAlias[alias] = this;
- }
+ SetAlias(alias);
}
internal Subcriteria(CriteriaImpl root, ICriteria parent, string path, string alias, JoinType joinType)
@@ -693,12 +690,7 @@
public string Alias
{
get { return alias; }
- set
- {
- root.subcriteriaByAlias.Remove(alias);
- alias = value;
- root.subcriteriaByAlias[alias] = this;
- }
+ set { SetAlias(value); }
}
public LockMode LockMode
@@ -936,6 +928,19 @@
// implemented only for compatibility with CriteriaTransformer
return root.Clone();
}
+
+ private void SetAlias(string newAlias)
+ {
+ if (alias != null)
+ {
+ root.subcriteriaByAlias.Remove(alias);
+ }
+ if (newAlias != null)
+ {
+ root.subcriteriaByAlias[newAlias] = this;
+ }
+ alias = newAlias;
+ }
}
[Serializable]
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|