The right way to handle this is to have the presentation layer go all the way to the business layer.
To do this in another way, the goal of creating a business layer is to create a separation of problems between ui and business processes. If you force the business process to know about the ui layer, you are breaking this separation of concerns.
There are several ways you could handle this. You can pass the path to the business layer when the business layer is being built, for example, through initialization of the constructor or through dependency injection. Or you can pass it to a method call. Or you can create a configuration file that loads your business layer containing this path.
There are many ways to get around this so as not to disturb the separation of problems.
Erik Funkenbusch Sep 06 '12 at 7:11 2012-09-06 07:11
source share