In a C# application I have 3 class layers. A, B and C. I am defining "layer" here as a namespace.
Layer A may communicate with the classes in layer B. Layer B is the only layer that can communicate with the classes in layer C. The problem I face is that I have a single property in layer B classes that should only be exposed to other layer B classes. So, if a layer B class instantiates another layer B class, I want this property to be visible. If some A layer class instantiates a layer B class, I want this property to be hidden.
Does anyone know if this can be done without making my layer B and C classes into a separate assembly?
Thanks,
Chris