Same class different DLL's

This happens all the time in E10 when you are trying to call Business Logic from from multiple BO’s in the same piece of code. For example of you are trying to modify Part properties from within SalesOrder.Update. Both the Contracts.BO.SalesOrder.dll and the Contracts.BO.Part.dll define the PartSubsTable class and the compiler doesn’t know which class you are referring to when using them so you get this error.


This gets particularly dificult when you are have more than 2 DLL’s that share the same class (dare I say SelectedSerialNumberDataSet which is defined in no less than 10 different DLL’s)

In standard Visual Studio you can get around this by defining an alias for the class but this is done at the project level and there is no way to do that with the dynamic compile projects in customizations and BPMs.

Has anyone else run into this and come up with a workaround? Currently the workaround that I’ve used is to move all my code to an external DLL that does the work,but that complicates the deployment and requires more maintenance.

@Bart_Elia @Edge

2 Likes

Have not tried this (in or outside of Epicor) but I wonder if an Application Domain might work?

Just a shot in the dark.

Mark W.

That may work outside of Epicor (in Visual Studio) but can’t do that within :frowning:

I’ve tried to figure out a way to do this for a long time (SelectedSerialNumber). The only way I’ve ever seen this handled is by what you said, an external DLL, which like you said will make things more complicated down the road.

1 Like

I heard offline from some Epicor folks, apparently there is no workaround… so for now we are SOL. They are looking at ways to fix it… in the future.

2 Likes