I was working on creating a RssAggregator in ASP.NET and since i didn't have VS.NET installed in my home box, i was compelled to use Webmatrix to develop the app. There are several things that i found very interesting during this work.
Say if you have only webforms and usercontrols, in essence only the UI to create say for displaying some data then it saves a lot of hassles.. But since i wanted to make it clean, that is abstracting out the code part from the presentation, not mixing up both ; the way webmatrix supports it actually, i had to use sharpdevelop to create the codebehind files. And in every page, all i have to set is the Inherits attribute in page directive ! and voila ! The interaction between the code and the presentation happens seamlessly !
All you have to take care is that the Assembly created by sharpdevelop is placed in the bin directory of the webmatrix code base. I guess the asp.net worker process assumes that whatever assemblies are present in the bin directory belong to the application and it automatically loads it up in the default appdomain of the application. Well i am not very sure about this exactly but i am almost convinced that it should happen this way.
The only problem after working in VS.NET is that i've become lazier than ever and i keep forgetting some of the basic stuff that needs to be done for coding because we end up assuming that the IDE will take care of everything [as though it is omnipotent huh ;) ]. For example, by default, as soon as you say runat=”server” the vs.net creates a new instance of the object in the codebehind so that it can be modified. But in our case, this step has to be manual and i am getting used to it now. It reminds me of good old c++ days when i use to type code in wordpad and then compile it in command line using Turbo C++. Wow ! It gives a sense of satisfaction too actually while coding like this and you start realising what the vs.net in effect does is to abstract the user from all miscellany ! It is really good to speed up your programming and so very much recommended for big time projects happening during our normal course of work. But in my personal opinion, i think tools like this help yourself know more about how the platform that you are working on exactly behaves because the user has to take care of the miscellany and should know exactly what results it will yield to get the program running.
Whoa ! I am really starting to enjoy this WebMatrix, SharpDevelop programming combination !