I have been using SubSonic since the 2.0 release and find it is a really nice OR/M tool for .NET applications. It offers some of the things I find particularly attractive in Ruby on Rails, things like Migrations.
The SubSonic 2.1 beta 1 offers so much more:
A New Query Tool
We have a new Query tool that lives happily alongside our existing one. Our goal with it was to make it as ?Fluent? and ?SQL-y? as possible. I wrote a post on how it works here, and updated that post here. Please refer to that until can crack out the docs which, yes now that this is my job, I will be spending a good amount of time on.
Northwind.CustomerCollection customersByCategory = new Select()
Eric and his secret little project are ready to see the light of day. I?m not sure how to categorize this thing, other than to say it?s a SubSonic Geek?s Best Friend. It?s part IDE, part Help Resource, Part Config tool, part Validator. Eric?s working up a screencast on it now (link to follow) and here are the highlights:
* Load your Web(or App).config and it will load your Database up, with settings
* Work with a GUI when setting your provider bits. Not sure what to use with that naming problem? SubStage will help.
* Validate your DB according our conventions, and see when you have problems right up front. Eric?s built in a complete validation system so if you don?t have a Primary Key on a table, you know it up front.
* View your object?s by Table or Class view. All of your naming and provider settings will be viewable when using our Class View – this way you?ll know your API before it?s generated.
* Generate your DAL using SubStage. Once you have everything set just so, generate the files then drag them from the SubStage Explorer window right into your project
* Work with your data. Eric build a frickin web server into SubStage, and wraps an AutoScaffold around your database so you can, literally, work with your data using our scaffold right there.
* Help? lots of Help. Access our API reference and Forums online, right through SubStage – we?re trying to make this easy for you? can you tell?
These features are great additions to what is already a great set of tools. I plan to post about a project I am working on using the ASP.NET MVC Framework with SubSonic handling my models. This project should be a great jump-off point for readers wanting to get into the Microsoft ASP.NET MVC Framework and not sure what to do about the back end.