I sometimes define Business Logic classes to ‘help’ my ASPX code-behind classes. It makes the most sense to me to include them both in the code-behind file since they work together. However, I’d occasionally like to access the Business Logic classes from higher level classes defined in App_Code but they aren’t automatically accessible outside of the file.
Thus, the question: it is easy to access classes defined in App_Code but how do I access classes defined elsewhere?
UPDATE: One other thing, the ASPX page class and the App_Code class are in the same namespace – that isn’t the issue.
NOTE: I have taken the advice of those who have responded (thanks guys) and am refactoring to make class access easier. However, I don’t think the question is actually answered yet (in the case of an ASP.NET Website project). I don’t need the answer any more but, if someone could clarify what makes classes visible when they are outside of App_Code, it may well help someone else (or even me, down the road).
I assume you mean you are defining a separate class inside the codebehind .cs file? What access modifiers are you giving them?
As above though, I’d generally have a separate project in the solution for this kind of thing (usually in a different namespace like MyApp.Web and MyApp.), and just reference it from there.