Yesterday, I created my first UI using the Spring.NET framework. I have to say that I am very impressed!
The features I used were
- Dependency injection
- Model-view-controller support
- Two way databinding
I have a couple pages done and so far they are turning out to be conceptually simple and clean. The framework strikes the right balance between being too intrusive vs not helpful enough. I am able to use the features that I want, without having to "drink all the cool-aid" at once.
The two way databinding is really nice because it decouples the UI stuff, the databinding, and the UI business logic into separate areas. This is the goal of MVC, and Spring.NET appears to be pretty helpful in this area.
There were a couple things that caught my attention:
- By default, the framework wants to use session state for holding the Model. This is not necessarily a problem and it can be changed. I mention it because we don't use session state today.
- The framework does seem to add a little bit of time to the application startup time. It's not ridiculous, but it is noticeable.
I'm still exploring the framework options a bit. Once I feel comfortable with Spring.NET, I hope to explore the ASP.NET MVC framework. I might kick the tires on MonoRail too.