Fluent Migrator Class Generator v0.1.0.0

by Frank Perez August 23, 2012

Earlier this year at the CodeMash conference in Sandusky, Ohio I heard about a NuGet Package called Fluent Migrator. Fluent Migrator is a database migration framework that uses classes for performing database migrations. Up until this point, the way I typically handled database migrations was to write T-SQL scripts or use a commercial application. So when I learned that I could accomplish database migrations using simple classes in .NET, I was intrigued.

The image above demonstrates how to use a Fluent Migrator class to perform a database migration (create table, create index, create foreign key, etc.). There are also similar expressions for deleting columns, altering tables, altering columns, and etc. I'm not going to go into all the details about how to use the framework. I think there is enough information on the project site to help anyone get started.

The one problem I found when using the Fluent Migrator framework is the barrier to getting started when the database already exists. Fluent Migrator does not have any kind of class generate utility that can build the initial class with all of the necessary create schema, table, column, and etc. commands. That means I would have to either use a T-SQL script of the current structure and then use Fluent Migrator classes for any future migrations. Or I could spend a significant amount of time building the initial class myself.

Since I'm the kind of person who hates monotonous work and thinking that I would want to use Fluent Migrator for several existing projects, I created my own utility for building the class called Fluent Migrator Class Generator. Fluent Migrator Class Generator is a console application for generating a Fluent Migrator class based on an existing SQL Server Database.

If you would like a copy of this application, you can download the latest version using the link below. The following is a list of important notes:

  • This application requires the Microsoft .NET Framework 4 Client Profile.
  • This application has only been tested with SQL Server 2008 R2. Other versions may work, but there could be issues mapping newer data types.
  • Be sure to read the README.TXT file for instructions on running the application.
  • I'd love to hear any feedback. What do you like, what do you not like, what kind of features would you like to see in future versions?


Links:
Download Fluent Migrator Class Generator http://pfsolutions-mi.com/Product/FluentMigratorClassGenerator
Fluent Migrator Project Site http://nuget.org/packages/FluentMigrator
Microsoft .NET Framework 4 Client Profile http://www.microsoft.com/downloads/en/details.aspx?FamilyID=5765d7a8-7722-4888-a970-ac39b33fd8ab

Keywords:

Filed Under: .NET | FMG

Comments are closed

About Frank

Frank lives in West Bloomfield, Michigan with his wife and three children.  When he is not writing code, he enjoys long distance running and riding his motorcycle.

Month List

Tag Cloud