After adding a shortcut for the PaymentMethod class on the Package 2 model I
create an association between the PaymentMethod and the Transaction. I set
all the properties and all compiles and the model validates.
Because I don't want to be able to navigate from the PaymentMethod to the
Transactions (performance issues) I changed the Association End's navigable
property to false. The dll's will compile OK but the model validation
returns the error;
Error MVEException System.NullReferenceException: Object reference not set
to an instance of an object.
at
Borland.Eco.Internal.ReflectionReader.CreateNonnavigableAssociationEnd(Type
t, CustomAttributeCracker EndAttributes, UmlAssociationImpl Association,
EcoTypeSystemImpl SystemTypeInfo)
at Borland.Eco.Internal.ReflectionReader.DoConvert(Type ecoSpaceType)
at Borland.Eco.Internal.ReflectionReader.Convert(Type ecoSpaceType)
thrown by ReflectionReader []
Is it possible to have a cross-package non-navigatable association?
> I have two packages (each in their own dll) in my Model. Package 1
> contains the class PaymentMethod and Package 2 contains the class
> Transaction.
>
> After adding a shortcut for the PaymentMethod class on the Package 2
> model I create an association between the PaymentMethod and the
> Transaction. I set all the properties and all compiles and the model
> validates.
>
> Because I don't want to be able to navigate from the PaymentMethod to
> the Transactions (performance issues).
There are no performance issues of having it navigable as long as you
don't actually navigate it.
>
> Error MVEException System.NullReferenceException: Object reference
> not set to an instance of an object. at
> Borland.Eco.Internal.ReflectionReader.CreateNonnavigableAssociationEnd
> (Type t, CustomAttributeCracker EndAttributes, UmlAssociationImpl
> Association, EcoTypeSystemImpl SystemTypeInfo) at
I'm not 100% sure, but I think you have managed to get the
non-navigable on the wrong side (making it non-navigable in both ends).
try to make it as navigable as possible (the end that is in a different
DLL will always have a non-navigable association anyway since the
generated code can't be modified).
--
/Jonas, Borland Eco R&D