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