Getting Jiggy With ASP.NET On Rails

Update: Rob renamed his project to Subsonic.

Rob Conery just released ASP.NET ActionPack 1.0.1 on his blog today.  This project is definitely one to watch!  He is essentially taking some of the principles of developing web apps with Ruby on Rails and porting those ideas to ASP.NET.  Just watch this great screencast to get a taste of the progress he has made in a short time.

So far I am very impressed with this guy.  Yesterday evening I sent the link to the screencast to Jon Galloway who then wondered why he was using strings for table names.  I told him to quit bothering me about it and post something in the Codeplex forum.  But Jon, being the simultaneous type of guy he is, had already posted a comment on Rob’s blog before I could finish my sentence.  This all happened last night.  This morning I notice the sixth bullet point in Rob's announcement states that he added struct in classes for column names.  Apparently he had received the comment, made the change, and sent a reply to Jon in two hours.

Now that is a quick turnaround and good customer service! ;)

Not only that, but this guy lives in Kuaui, Hawaii! I don’t know how he gets anything done unless it’s the rainy season right now. Subtext would definitely languish if I lived in Kuaui.

What others have said

Requesting Gravatar... Anon Aug 29, 2006 3:29 PM
# re: Getting Jiggy With ASP.NET On Rails
Kauai
Requesting Gravatar... haacked Aug 29, 2006 3:34 PM
# re: Getting Jiggy With ASP.NET On Rails
Doh! Thanks!
Requesting Gravatar... Damien Guard Aug 29, 2006 3:39 PM
# re: Getting Jiggy With ASP.NET On Rails
I was quite impressed with the features last night but today I've been digging through the code and I'm less so.

A lot of the stuff is just throwing long strings together with no regard for encoding in the SQL table and column names as far as I could see as well as a similar problem dumping to Html but that might just be a debug function.

Another limitation seems to be that you have to effectively have your DAL right inside your web application as it's the only place build providers can actually run.

Apparently it is db neutral yet everywhere I see command parameters being added it is using the SqlServer "@" syntax so how well it would work with the likes of Oracle I'm not sure.

There's also a major concurrency issue with getting back auto-increment keys. The comment speaks for itself;

//the default convention is that every table has a unique, auto-increment key
//this is for setting the PK after save. @@IDENTITY or IDENTITY_SCOPE can
//be used, but don't translate to other DBs. MAX does so it's used here

It also doesn't appear to handle Null's in any way shape or form.

The code is littered with Xml comments that are missing the parameter information too.

Seems like more of a 0.x release at the moment.

[)amien
Requesting Gravatar... hammett Aug 29, 2006 4:18 PM
# re: Getting Jiggy With ASP.NET On Rails
Great, but far away from what Castle MonoRail's already provides.
Requesting Gravatar... Christopher Steen Aug 29, 2006 10:19 PM
# Link Listing - August 29, 2006
Hitting the WPF Curve (a.k.a. Falling off the WPF Cliff) [Via: smguest ] Codesmith Exception Template...
Requesting Gravatar... Rob Conery Aug 30, 2006 2:20 PM
# re: Getting Jiggy With ASP.NET On Rails
Thought I would address a few points raised by Damien, and Hammett.

First Hammett: One of the reasons I made this thing is because using Castle requires a bucket of DLLs and configuration. Even then, you have to deal with nHib and let's just say it's not my favorite thing :). My goal is not to introduce yet another platform - it's to make life a little simpler for developers.

Damien:
**A lot of the stuff is just throwing long strings together

>> True. We don't have UTF-8 support yet but hopefully soon.


***Another limitation seems to be that you have to effectively have your DAL right inside your web application

>> No, the BuildProvider is a convenience. If you notice at the end of the webcast I point out if you don't want to do this, use our CodeGenerator to put the classes to file.

**There's also a major concurrency issue with getting back auto-increment keys

>>> The concurrency issues with running a MAX are the same as @@IDENTITY - they grab the last ID inserted. The MAX query happens nanoseconds after insert, and it happens in a batch with the insert call (not a separate connection) so the two queries execute back to back.

**It also doesn't appear to handle Null's in any way shape or form.

>>> Of course it does. Set a column to null.

**The code is littered with Xml comments that are missing the parameter information too.

>> Yes I need to clean things up a bit :):). Could use some help if you're game....
Requesting Gravatar... Si Philp Mar 19, 2007 4:14 AM
# re: Getting Jiggy With ASP.NET On Rails
Was sent the link to ActionPack this morning from a friend and I am very impressed. Watching the video outlining the functionality makes you think how much development time you can save. In the near future I think I'll be using along side the application data block.

The scaffold idea is so handy. I can see many uses for this.

Well done to the development team will be good to see what the next versions will have.


Si

What do you have to say?

(will show your gravatar)
Please add 5 and 2 and type the answer here: