We’ve been putting together an ASP.NET starter kit which may or may not be productized. It’s a Visual Studio solution / template which includes the following features.
- Master pages
- Themes / skins / styles
- Theme, database connectivity, and many other parameters defined in web.config. This allows for global site changes without code changes.
- Ajax-enabled forms, some making use of the Ajax Control Toolkit.
- Standard Login controls which use a custom MembershipProvider and RoleProvider which I wrote to use an MV DBMS as the data source rather than SQL Server.
- MV Data Access Layer (DAL) which allows a Business Logic Layer (BLL) to transparently use MV as a data source. You should be able to use this with an IronSpeed front-end, SubSonic (FLOSS), or other tools that generate the front-end and business tier of an MVC architecture.
- There are examples of BLL classes which serve as ObjectDataSources to bind directly to webform controls like Combo/DropDown lists and the GridView. In English this means you can exchange data with complex controls with a combination of BLL rules and BASIC from the server.
We’re trying to create good examples of many types of interaction with the browser, with data validated on the client when possible, on the web server when preferred, and on the DBMS when preferred/required. According to the plan, except for the DAL and custom membership classes all of the source code will be provided in the package.
Updates will include:
- Links to helpful websites, forums, and web pages – the better resources for learning and getting help.
- Explanations, tips, and tutorials for some of the techniques included in the kit.
- More code for specific functions like web services, data exchanges between relational and MV platforms, XML reading/writing and serialization.
- More sample pages that include features commonly used in development.
The idea is to help kick-start the learning curve for MV developers who are new to ASP.NET, and make it a little easier for them to take the plunge. This also may encourage more people to use tools like mv.NET, or to get development services from Nebula R&D, knowing that they will be able to maintain some or all of the code after we’re done with the initial development. In fact, the kit is being developed using code from actual projects that we’re working on now and putting into production sites. (No, there’s nothing proprietary in there.)
I really don’t know if this is going to fly and I sort of doubt it will, but as we go the kit is being built and serves as a base package for us to start working on new sites. So it’s real code, always evolving, and I think it would be helpful to others.
What do you think?