So I have been working on a small web application (site) for a group of friends of mine and have come to the realization that things need to change. The application has two faces to it
- a public facing side that serves dynamic data to visitors and non admins, and
- an admin side where admins can update or create the dynamic data to be served.
This application started off as a single webforms project sectioned off by separate pages and and web.config security of folders. Then it grew into separate projects (MVC admin side and webforms front end). I later had to bring it to where it is today, a single web app with a mix of MVC (admin) and webforms (public), due to deployment issues.
Now I am looking at migrating it to a single MVC project. I would like to keep my administration functions desperate from my public facing side by URL like /Admin and am not sure how to do it. I have read a lot of topics on grouping controllers into modules but am not sure that is the right thing yet.
- Should I just create admin functions inline with the rest of the public app and determine if the user is logged in or not?
- Or should I create Admin controllers that are separate from the public controllers (EventAdminController vs CalendarController)?
- What have others done?
Suggestions welcome, thanks stackoverflow.