Admin Tool for my ASP.NET website where can I start from?

298 views Asked by At

I decided to write an administration tool for my ASP.NET 4.0 website that has Membership Capabilities too.

I have the business layer ready for the following activities,

  1. The number of users logging in to the website per day.
  2. Average spend time of the user who is logged in.
  3. Pages accessed by the user who is logged in.
  4. Frequency of the User logins per month.
  5. etc etc. Even though checking the above listed activities is possible by directly peeking in to the Database or Google Analytics, I prefer them to appear them at one place as I have other activities to be followed depending on the data I see from this.

I prefer to use charts (open source jquery charts).

My concern is where should I start building the admin pages like in the exisiting web application as the users accessing or in a separate web application (is this really possible)?

If in a separate web application is possible how could I map the domain to the new web application for admin.

3

There are 3 answers

0
MikeSmithDev On BEST ANSWER

Since you are using the built-in ASP.NET Membership, it'd probably be easiest to just make a sub-folder (like any other folder in your application) called "Admin" or whatever you prefer, and then secure this folder with a web.config file specifically in that folder. You can easily secure the folder either by role or by user.

<system.web>
    <authorization>
        <allow roles="YOURRoles"/>
        <deny users="*"/>
    </authorization>
</system.web>

MSDN Entry

For the charting, one option is Highcharts. There is a .NET library (DotNet.Highcharts) to make it easy to manage Highcharts from the code-behind. I've used it before and thought it was user-friendly.

0
Ravi Gadag On

i just suggest you can create a folder named "Admin". there you create the all implementation

  1. Use Authorization for security of the Admin Portal
  2. Logging

for authorization

add this to your web.config in Admin FOlder. (add-> web.config in admin folder)

<location path="folder">
    <system.web>
        <authorization>
            <allow roles="Admin" />
            <deny users="*" />
        </authorization>
    </system.web
</location>

for the Jquery graph charts use JqPlot

2
Ege Akpinar On

I'd suggest you create a subfolder in your application domain and work on your administration tool there

It is possible to have two separate web apps in the following manner

  • Two apps do not share code - You can make them access the same database and not share code
  • Two apps share code - You can pack some of your logic into separate projects and make your web apps reference them. All can happen in the same solution file. You can even make your new admin app refer to the original app in the same manner.
  • Two apps share bit of logic - You can expose some of the logic via an API and make the other web app access the API

I'd suggest you just do the first and the easiest option.