looks like you A instance is actually managed already by DataAccess. Which means, that by letting the B instance beeing managed from another ObjectContext instance you are creating a cross management reference, which is not supported. Please check that the this. telericContext value is not changed between the load of the A instance and the .Add(b); I suspect that you are using a new instance there. In other words: Is the managing context of instance A at the time that you attempting .Add(b) the same as the this.telericContext?
The ObjectScope is an (internal) implementation detail of the OpenAccessContext instance that you are using.
OpenAccess ORM is now Telerik Data Access
. For more information on the new names, please, check out the Telerik Product Map