When implementing interfaces that "inherits" other interfaces that contains indexes, it looks like the index get's registered double. This is the stack trace I get. Basically IEmployee inherits IPerson and IPerson has a property called Country on it.
[ArgumentException: An item with the same key has already been added.]
System.ThrowHelper.ThrowArgumentException(ExceptionResource resource) +52
System.Collections.Generic.Dictionary2.Insert(TKey key, TValue value, Boolean add) +9382923
Xtensive.Orm.Model.NodeCollection
1.OnInserted(TNode value, Int32 index) +45
Xtensive.Collections.CollectionBase1.Add(TItem value) +134
Xtensive.Orm.Model.NodeCollection
1.Add(TNode item) +45
[InvalidOperationException: Item with name 'IEmployee.IPerson.FK_Country.UNION' already exists in 'IEmployee.Indexes'.]
Xtensive.Orm.Model.NodeCollection1.Add(TNode item) +131
Xtensive.Orm.Building.Builders.IndexBuilder.CreateInterfaceIndexes(TypeInfo interface, ICollection
1 processedInterfaces) +553
Xtensive.Orm.Building.Builders.IndexBuilder.CreateInterfaceIndexes() +131
Xtensive.Orm.Building.Builders.IndexBuilder.BuildIndexes() +100
Xtensive.Orm.Building.Builders.ModelBuilder.BuildModel() +146
Xtensive.Orm.Building.Builders.ModelBuilder.Run() +268
Xtensive.Orm.Building.Builders.DomainBuilder.BuildModel() +119
Xtensive.Orm.Building.Builders.DomainBuilder.BuildDomain(DomainConfiguration configuration, DomainBuilderConfiguration builderConfiguration) +258
Xtensive.Orm.Upgrade.UpgradingDomainBuilder.BuildStageDomain(UpgradeStage stage) +296
Xtensive.Orm.Upgrade.UpgradingDomainBuilder.Build(DomainConfiguration configuration) +232
Xtensive.Orm.Domain.Build(DomainConfiguration configuration) +5
asked
May 18 '11 at 12:51
tmyklebust
48●5●5●9
Hello Terje,
I will check this soon.