Finally a new version of SubSonic was released today with a lot of new features. SubSonic is one of my favorite Data Access Layer (DAL) generators, that makes it super easy to create data access code.
As a developer you have a lot of control over what the generated code looks like, which is great because I do not like code generators to dictate the essence of my code. But the beauty of SubSonic is that you never really have to interact with the generated code itself. It’s automatically generated and compiled for you — you just need to learn how to use it, which is pretty simple. What’s more, it’s free, and works with not only SQL Server, but also with MySQL, SQLite, and Oracle databases. Read more…
ScottGu just made available a free downloadable eBook in PDF format as well as a simple and easy-to-understand sample project called Nerddinner.
The eBook is actually a chapter from his upcoming book on MVC, but it is an end-to-end tutorial that walks through building a small but complete ASP.NET MVC application from scratch.
Download eBook.
Download Nerddinner sample code.
Buy ASP.NET MVC 1.0 Book at Amazon.com.
If you do decide to read this book, please do not forget to share your thoughts with me.
SubSonic is an excellent open source DAL generation tool developed by Rob Conery that has been around for almost a year. In most cases SubSonic can just be added to your project, pointed to a databse, and you magically and immediately gain access to a rich and strongly typed object model that can be used to query and persist data to and from your relational data source.
SubSonic also has a cool feature called the REST handler that essentially allows one to use HTTP protocol as an interface to data stored in a back-end relational database. It is URI based and returns data back in XML format. This data can then be used by decoupled client applications as they see fit. If you have never looked at SubSonic, you owe it to yourself to checkout this very cool tool.
Recently Microsoft unveiled their plans to release similar features codenamed Astoria and Jasper with .NET framework 3.5 and Visual Studio 2008. The CTP of Astoria and Jasper are available for download from Microsoft.
Jasper is described by Microsoft as:
Project Jasper is geared towards iterative and agile development. You can
start interacting with the data in your database without having to create
mapping files or define classes. You can build user interfaces by naming
controls according to your model without worrying about binding code. Project
Jasper is also extensible, allowing you to provide your own business logic and
class model. Since Project Jasper is built on top of the ADO.NET Entity
Framework, it supports rich queries and complex mapping.
Pablo Castro, the mastermind behind Astoria describes it as:
The goal of Microsoft Codename Astoria is to enable applications to expose data as a data service that can be consumed by web clients within a corporate network and across the internet. The data service is reachable over HTTP, and URIs are used to identify the various pieces of information available through the service. Interactions with the data service happens in terms of HTTP verbs such as GET, POST, PUT and DELETE, and the data exchanged in those interactions is represented in simple formats such as XML and JSON.
The Astoria web site also includes sample online services that showcases how this new technology can be used. It also allows anyone with a Passport account to design and host their own experimental data services .
ASP.NET generates temporary files from the code-behind and aspx files that it compiles into assemblies behind the scenes. These temporary files are stored in %WINDIR%\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files folder. Sometimes these files get out-of-sync with the user code and modifications to the code have no effect while debugging. In such situations it is safe to delete the contents of this folder and force ASP.NET to regenerate these files.