Personal Home Page with MYSQL, DBLINQ and MONO


I've modified my Personal HomePage such that it can be hosted on a LINUX Environment with APACHE Server. My website is hosted in here but it is on a limited time hosting only. I needed a lifetime free web host but by googling my way around, I found out that all other ASP.NET hosts came with a fee. However, there are promising web hosts in a LINUX Environment that offered free hosting space for ASP.NET using MONO RUNTIME. MONO What???! So, I let google find answers to my questions about MONO and here's what I did to modify my codes to make MONO and LINUX happy:


DATABASE
I changed my Server backend from Microsoft's SQL SERVER to the free but ultra reliable MYSQL. Luckily, MySQL has a Membership provider so, I don't have to implement the Membership myself. (Yes!) I only had to deal with the minor differences with the database's data type incompatibility.


RUNTIME ENVIRONMENT
In order for ASP.NET to work in LINUX, MONO is used. I've installed a MONO IDE to run my website offline and check if there's incompatibility problems. Yeah, there are problems, but with a little tweak here and there and its fine.


LINQ TO SQL
I've used a Repository Pattern and LINQ to SQL for saving my data to database, but unluckily, LINQ to SQL does not work with MYSQL. However, DBLINQ came to the rescue!
DBLINQ is not complete so some modifications to the Repository code is implemented. No problem! (I'll try NHibernate later though...)

DEPLOYMENT
However, deploying it is not smooth sailing. My website is working fine on development machine using MONO Runtime on Wndows machine, but when deployed on LINUX machine, many problems are encountered. Problems included missing .dlls, Security Access, MONO not accepting hashed password and others. However, in every problem, there will always be a solution. So, view in here my website in all its glory...

View page





Personal Homepage Using ASP.NET WITH C#

This project uses ASP.NET 3.5 with C#. I have used SQL SERVER 2005 EXPRESS as the backend data provider. I've used a little bit of Domain Driven Design in order to have separation between the repository, services, and presentation logic. I've also used Inversion Of Control, implemented using Structure Map to reduce dependency between the classes.

In this project, I've also used CSS3 feaures for rounding corners and if you're viewing it on browsers not supporting these new features, you will only see rectangle corners.

This project has  blogging , photo album, chatting, video, and RSS features.


ABOUT PAGE
   - Displays information about this website




ABOUT-PROFILE PAGE
   - Displays information about my profile


BLOGS-BLOG CONTENT PAGE
   - Displays my blog content.


BLOGS-BLOG LIST PAGE
   -Displays list of blogs


 BLOGS-MANAGE BLOG PAGE
    -Allows me to manage my blog.



BLOGS PAGE
   - Displays a list of blogs by category.



CHAT PAGE
   -Asks a user for a chat name before the user can use the chat room.



CHAT-CHAT ROOM PAGE
   - Allows users to chat.



CHAT-CONTACT PAGE
   - Allows users to send me a message.



HOME PAGE
   - Displays the home page of the website.



HOME-LOGIN PAGE
   - allows the user to log-in.


HOME-WALL PAGE
   - Displays my wall.



 PHOTOS PAGE
   -Displays the photo albums.



PHOTOS - ALBUM PHOTOS
  - Displays the photos in the album.



PHOTOS - MANAGE PHOTOS PAGE
    -Allows me to add and edit photos.




PHOTOS - SINGLE PHOTO PAGE
   -Displays a single photo.



SETTINGS PAGE
   - Allows me to set the website settings.


SETTINGS-ACCOUNT PAGE
   - Allows me to set my account settings.


 SETTINGS - PROFILE PAGE
   - Allows me to set my  Profile Settings.









Enrollment System Using ASP.NET IN C#

This is my project for ASP.NET with C#. This project uses 3-tier and 3-layer architecture to separate the presentation logic, database logic and the business logic of the application.




ENROLLMENT - STEP1 ( REGISTRATION)
    - Student submits registration for enrollment.




ENROLLMENT - STEP2 ( REGISTRAR APPROVAL)

    - Registrar approves the submitted registration record.





ENROLLMENT - STEP3 ( CLASS SELECTION )
    - Student selects class schedules.




ENROLLMENT - STEP4 ( ADVISER APPROVAL )

    - Adviser approves class selection record of student.




ENROLLMENT - STEP5 ( ASSESSOR APPROVAL )
    - Assessor assesses enrollment fees.




ENROLLMENT - STEP6 ( CASHIER APPROVAL)

    - Cashier receives enrollment payment.



ENROLLMENT - STEP7 ( ID ISSUANCE)

    - Registrar issues ID Number to new student.




HELP - ABOUT

    - Displays information about this website.


HELP - DEMO

    - Allows the user to have a demo of the software.




MASTERLIST -CLASS MASTER LIST

    - Displays information about the class master list.



MASTERLIST -COURSE MASTER LIST

    - Displays information about the course master list.



MASTERLIST -CURRICULUM MASTER LIST

    - Displays information about the curriculum master list.



MASTERLIST -FACULTY MASTER LIST

    - Displays information about the faculty master list.



MASTERLIST -GRADE MASTER LIST

    - Displays information about the grade master list.



MASTERLIST -REQUIREMENT MASTER LIST

    - Displays information about the requirement master list.



MASTERLIST -ROOM MASTER LIST

    - Displays information about the room master list.



MASTERLIST -STUDENT  MASTER LIST

    - Displays information about the student master list.



MASTERLIST -SUBJECT MASTER LIST

    - Displays information about the subject master list.



SETTINGS-ACCOUNTS

    - Allows website admin to set-up user accounts.



SETTINGS-ACCOUNTS-CREATE ACCOUNTS
    - Allows website admin to create user accounts.



SETTINGS-ACCOUNTS-CREATE ROLES
    - Allows website admin to create user account roles.



SETTINGS-ACCOUNTS
    - Allows website admin to set-up curriculum settings.





SETTINGS-DAY SETTINGS
    - Allows website admin to set-up day settings.



SETTINGS-PERIOD SETTINGS
    - Allows website admin to set-up period settings.



SETTINGS-SCHEDULE SETTINGS
    - Allows website admin to set-up schedule settings.



SETTINGS-SEMESTER SETTINGS
    - Allows website admin to set-up semester settings.



SETTINGS-TIME SETTINGS
    - Allows website admin to set-up time settings.



SETTINGS-YEAR SETTINGS
    - Allows website admin to set-up time year settings.



STUDENT -CLASS SCHEDULES

    - Displays information about the student's current class schedules.



STUDENT -CURRICULUM

    - Displays information about the student's course curriculum.



STUDENT -ENROLLMENT STATUS

    - Displays information about the student's enrollment status.



STUDENT -GRADES

    - Displays information about the student's grades.



STUDENT -STUDENT RECORD

    - Displays information about the student's account.



STUDENT -CLASSES LIST

    - Displays information about the student's current class schedules.



TEACHER -INPUT GRADES

    - Used by teacher to input grades.