File tree 1 file changed +9
-3
lines changed
Orm/Xtensive.Orm/Sql/Model
1 file changed +9
-3
lines changed Original file line number Diff line number Diff line change @@ -30,12 +30,18 @@ public class NodeCollection<TNode>: CollectionBaseSlim<TNode>
30
30
/// <returns><see langword="True"/> if this instance is read-only; otherwise, <see langword="false"/>.</returns>
31
31
public override bool IsReadOnly { get { return IsLocked || base . IsReadOnly ; } }
32
32
33
- /// <inheritdoc/>
33
+ /// <summary>
34
+ /// Adds item to collection.
35
+ /// </summary>
36
+ /// <param name="item">Item to add</param>
37
+ /// <exception cref="ArgumentException">The item with same name already exists in the collection</exception>
34
38
public override void Add ( TNode item )
35
39
{
36
40
base . Add ( item ) ;
37
- if ( ! string . IsNullOrEmpty ( item . GetNameInternal ( ) ) )
38
- nameIndex . Add ( item . GetNameInternal ( ) , item ) ;
41
+ var name = item . GetNameInternal ( ) ;
42
+ if ( ! string . IsNullOrEmpty ( name ) && ! nameIndex . TryAdd ( name , item ) ) {
43
+ throw new ArgumentException ( string . Format ( Strings . ExItemWithNameXAlreadyExists , name ) ) ;
44
+ }
39
45
}
40
46
41
47
public override bool Remove ( TNode item )
You can’t perform that action at this time.
0 commit comments